![]() |
Peano
|
#include <Configuration.h>
Public Member Functions | |
DefaultConfiguration (int maxTreesPerRank=0) | |
Create default configuration. | |
virtual bool | makeSplitDependOnMemory (State state) override |
Use the operating system's memory queries to get the memory out and to veto too many local splits. | |
virtual int | getMaxLocalTreesPerRank (State state) override |
Constraint on the number of trees per rank. | |
virtual double | getWorstCaseBalancingRatio (State state) override |
Control when to balance between ranks. | |
virtual int | getMinTreeSize (State state) override |
Minimum tree size. | |
virtual peano4::SplitInstruction::Mode | getMode (State state) override |
![]() | |
virtual | ~Configuration ()=default |
virtual std::string | toString () const |
Private Attributes | |
const int | _maxTreesPerRank |
Definition at line 66 of file Configuration.h.
toolbox::loadbalancing::DefaultConfiguration::DefaultConfiguration | ( | int | maxTreesPerRank = 0 | ) |
Create default configuration.
If you don't specify how many trees you allow per rank, then the code will try to maximise the utilisation.
Definition at line 10 of file Configuration.cpp.
|
overridevirtual |
Constraint on the number of trees per rank.
The number is always constrained by peano4::parallel::Node::MaxSpacetreesPerRank, but you can cut it down further.
You can use an arbitary large value if you don't care bout a maximum number of subpartitions per rank. I however do recommend that you return peano4::parallel::Node::MaxSpacetreesPerRank.
Implements toolbox::loadbalancing::Configuration.
Definition at line 18 of file Configuration.cpp.
Minimum tree size.
Implements toolbox::loadbalancing::Configuration.
Definition at line 26 of file Configuration.cpp.
|
overridevirtual |
Implements toolbox::loadbalancing::Configuration.
Definition at line 30 of file Configuration.cpp.
References peano4::SplitInstruction::BottomUp.
|
overridevirtual |
Control when to balance between ranks.
Implements toolbox::loadbalancing::Configuration.
Definition at line 22 of file Configuration.cpp.
|
overridevirtual |
Use the operating system's memory queries to get the memory out and to veto too many local splits.
Each split creates some overhead, so it can happen that we run out of memory.
Implements toolbox::loadbalancing::Configuration.
Definition at line 14 of file Configuration.cpp.
|
private |
Definition at line 68 of file Configuration.h.