uint MPI_Comm
Communicator identifier.
C int MPI_Comm_size(MPI_Comm comm, int *size)
uint MPI_Status
Status holder.
virtual Result getCommSize(MPI_Comm comm, int *size)=0
Retrieve communication size (total cores)
virtual Result terminate()=0
Terminate the backend.
virtual Result getCommRank(MPI_Comm comm, int *rank)=0
Retrieve communication rank (core id)
virtual Result initialize(int *argc, char ***argv)=0
Initialize the backend.
#define C
Used to define external C functions.
static MpiBackend * mpiBackend
C int MPI_Init(int *argc, char ***argv)
static MpiBackend * create()
Abstract function to create an instance of T.
C int MPI_Comm_rank(MPI_Comm comm, int *rank)
MPI_Datatype
Named Predefined Datatypes.
Represents a Message Passing Interface (MPI) implementation backend.
#define assert(exp)
Insert program diagnostics.
C int MPI_Send(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm)
C int MPI_Recv(void *buf, int count, MPI_Datatype datatype, int source, int tag, MPI_Comm comm, MPI_Status *status)
virtual Result receive(void *buf, int count, MPI_Datatype datatype, int source, int tag, MPI_Comm comm, MPI_Status *status)=0
Synchronous receive data.
virtual Result send(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm)=0
Synchronous send data.