SST  12.0.1
StructuralSimulationToolkit
selfpart.h
1 // Copyright 2009-2022 NTESS. Under the terms
2 // of Contract DE-NA0003525 with NTESS, the U.S.
3 // Government retains certain rights in this software.
4 //
5 // Copyright (c) 2009-2022, NTESS
6 // All rights reserved.
7 //
8 // This file is part of the SST software package. For license
9 // information, see the LICENSE file in the top level directory of the
10 // distribution.
11 
12 #ifndef SST_CORE_IMPL_PARTITONERS_SELF_H
13 #define SST_CORE_IMPL_PARTITONERS_SELF_H
14 
15 #include "sst/core/eli/elementinfo.h"
16 #include "sst/core/sstpart.h"
17 
18 namespace SST {
19 namespace IMPL {
20 namespace Partition {
21 
22 /**
23  Self partitioner actually does nothing. It is simply a pass
24  through for graphs which have been partitioned during graph
25  creation.
26 */
28 {
29 
30 public:
33  "sst",
34  "self",
35  SST_ELI_ELEMENT_VERSION(1,0,0),
36  "Used when partitioning is already specified in the configuration file.")
37 
38  /**
39  Creates a new self partition scheme.
40  */
41  SSTSelfPartition(RankInfo UNUSED(total_ranks), RankInfo UNUSED(my_rank), int UNUSED(verbosity)) {}
42 
43  /**
44  Performs a partition of an SST simulation configuration
45  \param graph The simulation configuration to partition
46  */
47  void performPartition(ConfigGraph* UNUSED(graph)) override { return; }
48 
49  bool requiresConfigGraph() override { return true; }
50  bool spawnOnAllRanks() override { return false; }
51 };
52 
53 } // namespace Partition
54 } // namespace IMPL
55 } // namespace SST
56 
57 #endif
A Configuration Graph A graph representing Components and Links.
Definition: configGraph.h:389
Self partitioner actually does nothing.
Definition: selfpart.h:27
Definition: rankInfo.h:21
void performPartition(ConfigGraph *UNUSED(graph)) override
Performs a partition of an SST simulation configuration.
Definition: selfpart.h:47
Base class for Partitioning graphs.
Definition: sstpart.h:31
SST_ELI_REGISTER_PARTITIONER(SSTSelfPartition,"sst","self", SST_ELI_ELEMENT_VERSION(1, 0, 0),"Used when partitioning is already specified in the configuration file.") SSTSelfPartition(RankInfo UNUSED(total_ranks)
Creates a new self partition scheme.