Beginn der Kommunikation:
- int MPI_Isend(void *buf, int count, MPI_Datatype datatype, int dest,
int tag, MPI_Comm comm, MPI_Request *request)
Starten eines Sends
- int MPI_Irecv(void *buf, int count, MPI_Datatype datatype, int source,
int tag, MPI_Comm comm, MPI_Request *request)
Starten eines Receives
Ende der Kommunikation:
- int MPI_Wait(MPI_Request *request, MPI_Status * status)
Warten bis zum Ende des Send oder Receive
- int MPI_Waitall(int count, MPI_Request *requests, MPI_Status *statuses)
Warten bis zum Ende aller Sends und/oder Receives
- int MPI_Waitany(int count, MPI_Request *requests, int *index,
MPI_Status *statuses)
Warten bis zum Ende eines Sends und/oder Receives
Abfrage des Kommunikations-Status:
- int MPI_Test(MPI_Request *request, int *flag, MPI_Status * status)
Ende-Status eines Isend oder Irecv in flag
- int MPI_Testall(int count, MPI_Request *requests, int *flag,
MPI_Status *statuses)
logisches UND der Kommunikations-Zustände
- int MPI_Testany(int count, MPI_Request *requests, int *index,
int *flag, MPI_Status *statuses)
logisches ODER der Kommunikations-Zustände

Peter Junglas 11.5.2000