11 #ifndef SST_CORE_IMPL_PARTITONERS_SIMPLEPART_H
12 #define SST_CORE_IMPL_PARTITONERS_SIMPLEPART_H
14 #include "sst/core/configGraph.h"
15 #include "sst/core/eli/elementinfo.h"
16 #include "sst/core/sst_types.h"
17 #include "sst/core/sstpart.h"
29 SST_ELI_REGISTER_PARTITIONER(
33 SST_ELI_ELEMENT_VERSION(1,0,0),
34 "Simple partitioning scheme which attempts to partition on high latency links "
35 "while balancing number of components per rank.")
41 RankInfo convertPartNum(uint32_t partNum)
43 return RankInfo(partNum / world_size.thread, partNum % world_size.thread);
46 void simple_partition_step(
48 const int lengthB,
int rankB, std::map<ComponentId_t, std::map<ComponentId_t, SimTime_t>*> timeTable,
int step);
57 bool requiresConfigGraph()
override {
return false; }
58 bool spawnOnAllRanks()
override {
return false; }
64 #endif // SST_CORE_IMPL_PARTITONERS_SIMPLERPART_H
Definition: configGraph.h:576
Definition: simplepart.h:25
Definition: rankInfo.h:21
Base class for Partitioning graphs.
Definition: sstpart.h:31
void performPartition(PartitionGraph *graph) override
Function to be overridden by subclasses.
Definition: simplepart.cc:183