Initialisation/terminaison
|
MPI_Init |
Initialize the MPI execution environment. |
MPI_Init_thread |
Initialize the MPI execution environment |
MPI_Finalize |
Terminates MPI execution environment |
MPI_Comm_rank |
Determines the rank of the calling process in the communicator |
MPI_Comm_size |
Determines the size of the group associated with a communicator |
MPI_Wtime |
Returns an elapsed time on the calling processor |
Point-to-point communication
|
Sending
|
MPI_Send |
Performs a blocking send |
MPI_Ssend |
Performs a blocking synchronous send |
MPI_Isend |
Performs a nonblocking send |
MPI_Issend |
Performs a nonblocking synchronous send |
Receiving messages
|
MPI_Recv |
Performs a blocking Recv |
MPI_Irecv |
Performs a nonblocking Recv |
Collective communication
|
Blocking collective communication
|
MPI_Barrier |
Blocks until all process have reached this routine. |
MPI_Bcast |
Broadcasts a message from the process with rank "root" to all other processes of the group. |
MPI_Gather |
Gathers together values from a group of processes |
MPI_Scatter |
Sends data from one task to all other tasks in a group |
MPI_Reduce |
Reduces values on all processes to a single value |
MPI_Alltoall |
Sends data from all to all processes |
MPI_Allgather - |
Gathers data from all tasks and distribute it to all |
tasks
MPI_Reduce_scatter |
Combines values and scatters the results |
MPI_Allreduce |
Combines values from all processes and distribute the result back to all processes |
Non-blocking collective communication
|
MPI_Ibarrier |
MPI_Ibarrier
Notifies the process that it has reached the barrier and returns immediately. |
MPI_Ibcast
|
Broadcasts a message from the process with rank "root" to all other processes of the communicator in a nonblocking way . |
MPI_Igather |
Gathers together values from a group of processes in a nonblocking way |
MPI_Iscatter |
Sends data from one process to all other processes in a communicator in a nonblocking way |
MPI_Ireduce |
Reduces values on all processes to a single value in a nonblocking way |
MPI_Ialltoall |
Sends data from all to all processes in a nonblocking way |
MPI_Iallgather |
Gathers data from all tasks and distribute the combined data to all tasks in a nonblocking way |
tasks
MPI_Ireduce_scatter |
Combines values and scatters the results in a nonblocking way |
MPI_Iallreduce |
Combines values from all processes and distributes the result back to all processes in a nonblocking way |
Communication completion
|
Waiting for a communication completion
|
MPI_Wait |
Waits for an MPI request to complete |
MPI_Waitall |
Waits for all given MPI Requests to complete |
MPI_Waitany |
Waits for any specified MPI Request to complete |
Testing for a communication completion
|
MPI_Test |
Tests for the completion of a request |
MPI_Testall |
Tests for the completion of all previously initiated requests |
MPI_Testany |
Tests for completion of any previdously initiated requests |