MPI_Mprobe function
Blocking probes for a message. Provides a mechanism to receive the specific message that was matched regardless of intervening probe/receive operations. The matched message is de-queued off the receive queue, giving the application an opportunity to decide how to receive the message based on the information returned by the matching probe operation. The matched message is then received using the MPI_Mrecv or MPI_Imrecv function.
Syntax
int MPIAPI MPI_Mprobe(
_In_ int source,
_In_ int tag,
_In_ MPI_Comm comm,
_Out_ MPI_Message *message,
_Out_ MPI_Status *status
);
Parameters
source [in]
Source rank or MPI_ANY_SOURCE.tag [in]
Message tag or MPI_ANY_TAG.comm [in]
MPI communicator handle.message [out]
On return, contains a pointer to the matched message.status [out]
On return, contains a pointer to an MPI_Status structure where information about the message is stored.
Return value
Returns MPI_SUCCESS on success. Otherwise, the return value is an error code.
In Fortran, the return value is stored in the IERROR parameter.
Fortran
MPI_MPROBE(SOURCE, TAG, COMM, MESSAGE, STATUS, IERROR)
INTEGER SOURCE, TAG, COMM, MESSAGE, STATUS(MPI_STATUS_SIZE), IERROR
Remarks
This function behaves like MPI_Improbe except that it is a blocking call that returns only after a matching message has been found.
Requirements
Product |
Microsoft MPI v6 |
Header |
Mpi.h; Mpif.h |
Library |
Msmpi.lib |
DLL |
Msmpi.dll |