mpi.cancel cancels a nonblocking send or receive request.
mpi.test.cancelled tests if
mpi.cancel cancels or not.
waitsome are used
to complete nonblocking send or receive requests. They are not local.
testsome are used
to complete nonblocking send and receive requests. They are local.
1 2 3 4 5 6 7 8 9 10
total number of nonblocking operations.
a request number.
a status number.
mpi.test are used to complete a nonblocking
send and receive request: use the same request number by
mpi.irecv. Once completed, the associated request is set to
MPI\_REQUEST\_NULL and status contains information such as source, tag,
and length of message.
If multiple nonblocking sends or receives are initiated, the following calls are more efficient. Make sure that request numbers are used consecutively as request=0, request=1, request=2, etc. In this way, the following calls can find request information in system memory.
mpi.testany are used to complete one out of
mpi.testall are used to complete all
mpi.testsome are used to complete all
mpi.cancel returns no value.
mpi.test.cancelled returns TRUE if a nonblocking call is cancelled;
mpi.wait returns no value. Instead status contains information that
can be retrieved by
mpi.test returns TRUE if a request is complete; FALSE otherwise. If
TRUE, it is the same as
mpi.waitany returns which request (index) has been completed. In
addition, status contains information that can be retrieved by
mpi.testany returns a list: index— request index; flag—TRUE if
a request is complete; FALSE otherwise (index is no use in this case).
If flag is TRUE, it is the same as
mpi.waitall returns no value. Instead statuses 0, 1, ..., count-1
contain corresponding information that can be retrieved by
mpi.testall returns TRUE if all requests are complete; FALSE
otherwise. If TRUE, it is the same as
mpi.waitsome returns a list: count— number of requests that have
been completed; indices—an integer vector of size \$count of those
completed request numbers (in 0, 1 ,..., count-1). In addition, statuses
0, 1, ..., \$count-1 contain corresponding information that can be
mpi.testsome is the same as
mpi.waitsome except that \$count
may be 0 and in this case \$indices is no use.