NIST Biometric Evaluation Framework
Software components for biometric technology evaluations
be_mpi_resources.h
Go to the documentation of this file.
1
10#ifndef _BE_MPI_RESOURCES_H
11#define _BE_MPI_RESOURCES_H
12
13#include <memory>
14#include <string>
15#include <vector>
16
17namespace BiometricEvaluation {
18 namespace MPI {
25 class Resources {
26 public:
34 static const std::string WORKERSPERNODEPROPERTY;
35
43 static const std::string NUMCPUS;
44
52 static const std::string NUMCORES;
53
61 static const std::string NUMSOCKETS;
62
67 static const std::string LOGSHEETURLPROPERTY;
68
74 static const std::string CHECKPOINTPATHPROPERTY;
75
82 static std::vector<std::string>
84
91 static std::vector<std::string>
93
107 Resources(const std::string &propertiesFileName);
108
116 std::string getPropertiesFileName() const;
117
128 std::string getLogsheetURL() const;
129
139 std::string getCheckpointPath() const;
140
142
143 int getRank() const;
144 int getNumTasks() const;
145 int getWorkersPerNode() const;
146
147 private:
148 std::string _propertiesFileName;
149 int _rank;
150 int _numTasks;
151 int _workersPerNode;
152 std::string _logsheetURL;
153 std::string _checkpointPath;
154 };
155 }
156}
157
158#endif /* _BE_MPI_RESOURCES_H */
159
A class to represent a set of resources needed by an MPI program.
static const std::string WORKERSPERNODEPROPERTY
The property string "Workers Per Node"; required.
std::string getPropertiesFileName() const
Obtain the name of the file used to construct this object.
static std::vector< std::string > getRequiredProperties()
Obtain the list of required properties.
static const std::string LOGSHEETURLPROPERTY
The property string "Logsheet URL"; optional.
static const std::string NUMCPUS
The "Workers Per Node" setting "NUMCPUS".
Resources(const std::string &propertiesFileName)
Constructor taking the name of the properties file describing the resources.
std::string getCheckpointPath() const
Obtain the Checkpoint Path name.
static const std::string NUMSOCKETS
The "Workers Per Node" setting "NUMSOCKETS".
static std::vector< std::string > getOptionalProperties()
Obtain the list of optional properties.
static const std::string NUMCORES
The "Workers Per Node" setting "NUMCORES".
static const std::string CHECKPOINTPATHPROPERTY
The property string "Checkpoint Path"; required when checkpointing is enabled, optional otherwise.
std::string getLogsheetURL() const
Obtain the Uniform Resource Locator for the IO:Logsheet object.
This software was developed at the National Institute of Standards and Technology (NIST) by employees...