SST 15.0
Structural Simulation Toolkit
singlepart.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_SINGLEPART_H
13#define SST_CORE_IMPL_PARTITONERS_SINGLEPART_H
14
15#include "sst/core/eli/elementinfo.h"
16#include "sst/core/sstpart.h"
17
18namespace SST::IMPL::Partition {
19
20/**
21 Single partitioner is a virtual partitioner used for serial jobs.
22 It simply ensures that all components are assigned to rank 0.
23*/
25{
26
27public:
30 "sst",
31 "single",
32 SST_ELI_ELEMENT_VERSION(1,0,0),
33 "Allocates all components to rank 0. Automatically selected for serial jobs.")
34
35 /**
36 Creates a new single partition scheme.
37 */
38 SSTSinglePartition(RankInfo total_ranks, RankInfo my_rank, int verbosity);
39
40 /**
41 Performs a partition of an SST simulation configuration
42 \param graph The simulation configuration to partition
43 */
44 void performPartition(ConfigGraph* graph) override;
45
46 bool requiresConfigGraph() override { return true; }
47 bool spawnOnAllRanks() override { return false; }
48};
49
50} // namespace SST::IMPL::Partition
51
52#endif
A Configuration Graph A graph representing Components and Links.
Definition configGraph.h:450
Single partitioner is a virtual partitioner used for serial jobs.
Definition singlepart.h:25
SST_ELI_REGISTER_PARTITIONER(SSTSinglePartition, "sst", "single", SST_ELI_ELEMENT_VERSION(1, 0, 0), "Allocates all components to rank 0. Automatically selected for serial jobs.") SSTSinglePartition(RankInfo total_ranks
Creates a new single partition scheme.
void performPartition(ConfigGraph *graph) override
Performs a partition of an SST simulation configuration.
Definition singlepart.cc:24
Base class for Partitioning graphs.
Definition sstpart.h:32
Definition rankInfo.h:24