14#include "libmesh/communicator.h"
Mix-in class for querying memory metrics used by MemoryUsage and VectorMemoryUsage.
unsigned long long _memory_total
total RAM installed in the local node
const std::vector< unsigned int > & _hardware_id
hardware IDs for each MPI rank (valid on rank zero only)
std::vector< unsigned long long > _hardware_memory_total
total RAM for each hardware ID (node) (valid on rank zero only)
processor_id_type _nrank
number of ranks in the object's communicator
const Parallel::Communicator & _mur_communicator
communicator for this object
void sharedMemoryRanksByProcessorname()
Identify hardware by MPI processor name.
processor_id_type _my_rank
this objects rank
void sharedMemoryRanksBySplitCommunicator()
Use a share memory type communicator split (MPI3)
Every object that can be built by the factory should be derived from this class.