12 #ifndef SST_CORE_IMPL_PARTITONERS_SIMPLEPART_H
13 #define SST_CORE_IMPL_PARTITONERS_SIMPLEPART_H
15 #include "sst/core/configGraph.h"
16 #include "sst/core/eli/elementinfo.h"
17 #include "sst/core/sst_types.h"
18 #include "sst/core/sstpart.h"
30 SST_ELI_REGISTER_PARTITIONER(
34 SST_ELI_ELEMENT_VERSION(1,0,0),
35 "Simple partitioning scheme which attempts to partition on high latency links "
36 "while balancing number of components per rank.")
42 RankInfo convertPartNum(uint32_t partNum)
44 return RankInfo(partNum / world_size.thread, partNum % world_size.thread);
47 void simple_partition_step(
49 const int lengthB,
int rankB, std::map<ComponentId_t, std::map<ComponentId_t, SimTime_t>*> timeTable,
int step);
58 bool requiresConfigGraph()
override {
return false; }
59 bool spawnOnAllRanks()
override {
return false; }
65 #endif // SST_CORE_IMPL_PARTITONERS_SIMPLERPART_H
Definition: configGraph.h:616
Definition: simplepart.h:26
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