14 #include "libmesh/parallel_object.h" 44 const std::vector<processor_id_type> &
ranks(
unsigned int hardware_id)
const
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
const std::vector< processor_id_type > & ranks(unsigned int hardware_id) const
Returns the ranks that are on the given hardwareID (phsical node in the job)
std::vector< unsigned int > _rank_to_hardware_id
Each entry corresponds to the hardware_id for that PID.
Builds lists and maps that help in knowing which physical hardware nodes each rank is on...
const Parallel::Communicator & comm() const
std::unordered_map< unsigned int, std::vector< processor_id_type > > _hardware_id_to_ranks
Map of hardware_id -> ranks on that node.
const Parallel::Communicator & _communicator
processor_id_type size() const
uint8_t processor_id_type
const std::vector< unsigned int > & rankHardwareIds() const
Vector containing the hardware ID for each PID.
Interface for objects interacting with the PerfGraph.
unsigned int hardwareID(processor_id_type pid) const
Returns the "hardware ID" (a unique ID given to each physical compute node in the job) for a given pr...
RankMap(const libMesh::Parallel::Communicator &comm, PerfGraph &perf_graph)
Constructs and fills the map.
The PerfGraph will hold the master list of all registered performance segments and the head PerfNode...