00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef SST_CORE_PART_SIMPLEPART_H
00012 #define SST_CORE_PART_SIMPLEPART_H
00013
00014 #include "sst/core/part/sstpart.h"
00015
00016 namespace SST {
00017 namespace Partition{
00018
00019 class SimplePartitioner : public SST::Partition::SSTPartitioner {
00020
00021 private:
00022 int world_size;
00023 static bool initialized;
00024
00025 public:
00026
00027 SimplePartitioner(int total_ranks);
00028 SimplePartitioner();
00029 ~SimplePartitioner() {}
00030
00031 void performPartition(PartitionGraph* graph);
00032
00033 bool requiresConfigGraph() { return false; }
00034 bool spawnOnAllRanks() { return false; }
00035
00036 static SSTPartitioner* allocate(int total_ranks, int my_rank, int verbosity) {
00037 return new SimplePartitioner(total_ranks);
00038 }
00039
00040 };
00041
00042 }
00043 }
00044 #endif //SST_CORE_PART_SIMPLERPART_H