SST  15.1.0
StructuralSimulationToolkit
selfpart.h
1 // Copyright 2009-2025 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-2025, 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::IMPL::Partition {
19 
20 /**
21  Self partitioner actually does nothing. It is simply a pass
22  through for graphs which have been partitioned during graph
23  creation.
24 */
26 {
27 
28 public:
31  "sst",
32  "self",
33  SST_ELI_ELEMENT_VERSION(1,0,0),
34  "Used when partitioning is already specified in the configuration file.")
35 
36  /**
37  Creates a new self partition scheme.
38  */
39  explicit SSTSelfPartition(RankInfo UNUSED(total_ranks), RankInfo UNUSED(my_rank), int UNUSED(verbosity)) {}
40 
41  /**
42  Performs a partition of an SST simulation configuration
43  \param graph The simulation configuration to partition
44  */
45  void performPartition(ConfigGraph* UNUSED(graph)) override { return; }
46 
47  bool requiresConfigGraph() override { return true; }
48  bool spawnOnAllRanks() override { return false; }
49 };
50 
51 } // namespace SST::IMPL::Partition
52 
53 #endif
A Configuration Graph A graph representing Components and Links.
Definition: configGraph.h:585
Self partitioner actually does nothing.
Definition: selfpart.h:25
Definition: rankInfo.h:23
void performPartition(ConfigGraph *UNUSED(graph)) override
Performs a partition of an SST simulation configuration.
Definition: selfpart.h:45
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.") explicit SSTSelfPartition(RankInfo UNUSED(total_ranks)
Creates a new self partition scheme.
Definition: linpart.h:22