#include <PlayaMPIComm.hpp>
Public Member Functions | |
MPIComm () | |
Empty constructor builds an object for MPI_COMM_WORLD. | |
int | getRank () const |
Return process rank. | |
int | getNProc () const |
Return number of processors in the communicator. | |
void | synchronize () const |
Synchronize all the processors in the communicator. | |
Collective communications | |
void | allToAll (void *sendBuf, int sendCount, const MPIDataType &sendType, void *recvBuf, int recvCount, const MPIDataType &recvType) const |
All-to-all gather-scatter. | |
void | allToAllv (void *sendBuf, int *sendCount, int *sendDisplacements, const MPIDataType &sendType, void *recvBuf, int *recvCount, int *recvDisplacements, const MPIDataType &recvType) const |
Variable-length gather-scatter. | |
void | allReduce (void *input, void *result, int inputCount, const MPIDataType &type, const MPIOp &op) const |
Do a collective operation, scattering the results to all processors. | |
void | gather (void *sendBuf, int sendCount, const MPIDataType &sendType, void *recvBuf, int recvCount, const MPIDataType &recvType, int root) const |
Gather to root. | |
void | gatherv (void *sendBuf, int sendCount, const MPIDataType &sendType, void *recvBuf, int *recvCount, int *displacements, const MPIDataType &recvType, int root) const |
Gather variable-sized arrays to root. | |
void | allGather (void *sendBuf, int sendCount, const MPIDataType &sendType, void *recvBuf, int recvCount, const MPIDataType &recvType) const |
Gather to all processors. | |
void | allGatherv (void *sendBuf, int sendCount, const MPIDataType &sendType, void *recvBuf, int *recvCount, int *recvDisplacements, const MPIDataType &recvType) const |
Variable-length gather to all processors. | |
void | bcast (void *msg, int length, const MPIDataType &type, int src) const |
Broadcast. | |
Static Public Member Functions | |
static MPIComm & | world () |
Get an object representing MPI_COMM_WORLD. | |
static MPIComm & | self () |
Get an object representing MPI_COMM_SELF. |
At present, groups are not implemented so the only communicators are MPI_COMM_WORLD and MPI_COMM_SELF
Definition at line 34 of file PlayaMPIComm.hpp.
Playa::MPIComm::MPIComm | ( | ) |
Empty constructor builds an object for MPI_COMM_WORLD.
Definition at line 18 of file PlayaMPIComm.cpp.
MPIComm & Playa::MPIComm::world | ( | ) | [static] |
MPIComm & Playa::MPIComm::self | ( | ) | [static] |
int Playa::MPIComm::getRank | ( | ) | const [inline] |
int Playa::MPIComm::getNProc | ( | ) | const [inline] |
void Playa::MPIComm::synchronize | ( | ) | const |
Synchronize all the processors in the communicator.
Definition at line 130 of file PlayaMPIComm.cpp.
void Playa::MPIComm::allToAll | ( | void * | sendBuf, | |
int | sendCount, | |||
const MPIDataType & | sendType, | |||
void * | recvBuf, | |||
int | recvCount, | |||
const MPIDataType & | recvType | |||
) | const |
void Playa::MPIComm::allToAllv | ( | void * | sendBuf, | |
int * | sendCount, | |||
int * | sendDisplacements, | |||
const MPIDataType & | sendType, | |||
void * | recvBuf, | |||
int * | recvCount, | |||
int * | recvDisplacements, | |||
const MPIDataType & | recvType | |||
) | const |
void Playa::MPIComm::allReduce | ( | void * | input, | |
void * | result, | |||
int | inputCount, | |||
const MPIDataType & | type, | |||
const MPIOp & | op | |||
) | const |
Do a collective operation, scattering the results to all processors.
Definition at line 352 of file PlayaMPIComm.cpp.
void Playa::MPIComm::gather | ( | void * | sendBuf, | |
int | sendCount, | |||
const MPIDataType & | sendType, | |||
void * | recvBuf, | |||
int | recvCount, | |||
const MPIDataType & | recvType, | |||
int | root | |||
) | const |
void Playa::MPIComm::gatherv | ( | void * | sendBuf, | |
int | sendCount, | |||
const MPIDataType & | sendType, | |||
void * | recvBuf, | |||
int * | recvCount, | |||
int * | displacements, | |||
const MPIDataType & | recvType, | |||
int | root | |||
) | const |
void Playa::MPIComm::allGather | ( | void * | sendBuf, | |
int | sendCount, | |||
const MPIDataType & | sendType, | |||
void * | recvBuf, | |||
int | recvCount, | |||
const MPIDataType & | recvType | |||
) | const |
void Playa::MPIComm::allGatherv | ( | void * | sendBuf, | |
int | sendCount, | |||
const MPIDataType & | sendType, | |||
void * | recvBuf, | |||
int * | recvCount, | |||
int * | recvDisplacements, | |||
const MPIDataType & | recvType | |||
) | const |
void Playa::MPIComm::bcast | ( | void * | msg, | |
int | length, | |||
const MPIDataType & | type, | |||
int | src | |||
) | const |