MaMiCo 1.2
|
#include <MultiMDService.h>
Public Member Functions | |
MultiMDService (const tarch::la::Vector< dim, unsigned int > &numberProcesses, const unsigned int &totalNumberMDSimulations, MPI_Comm globalComm=MPI_COMM_WORLD) | |
unsigned int | getGlobalNumberOfLocalMDSimulation (unsigned int localMDSimulation) const |
int | getLocalNumberOfGlobalMDSimulation (unsigned int globalMDSimulation) const |
unsigned int | getLocalNumberOfMDSimulations () const |
unsigned int | getAvgNumberOfMDSimulations () const |
tarch::la::Vector< dim, unsigned int > | getNumberProcessesPerMDSimulation () const |
MPI_Comm | getLocalCommunicator () const |
unsigned int | getLocalRank () const |
unsigned int | getLocalSize () const |
MPI_Comm | getGlobalCommunicator () const |
unsigned int | getGlobalRank () const |
unsigned int | getGlobalSize () const |
void | setTotalNumberMDSimulations (unsigned int n) |
unsigned int | getTotalNumberOfMDSimulations () |
void | addMDSimulationBlock () |
void | removeMDSimulationBlock () |
int | getRank () const |
int | getSize () const |
unsigned int | getNumberLocalComms () const |
Private Attributes | |
MPI_Comm | _localComm |
MPI_Comm | _globalComm |
const tarch::la::Vector< dim, unsigned int > | _numberProcessesPerMDSimulation |
unsigned int | _numberLocalComms |
unsigned int | _totalNumberMDSimulations |
unsigned int | _avgNumberMDSimulationsPerLocalComm |
unsigned int | _thisNumberMDSimulations |
int | _globalSize |
int | _globalRank |
int | _localSize |
int | _localRank |
maps a number of MD simulations onto the total number of available ranks. For each MD simulation, a regular domain decomposition into n0 x n1 x ... x nD processes is assumed. We further assume that the total number of processes can be divided by the number of processes required by each MD simulation.