[mpich-discuss] MPI_Probe

Rajeev Thakur thakur at mcs.anl.gov
Fri Jan 6 00:30:13 CST 2012


> I know that MPI_Probe is blocking (does not return immediately). If in my process I have two threads, one of which issues the MPI_Probe call while the other does something else. Will the MPI_Probe call block the execution of the other thread?

The MPI standard says that a blocking call on one thread will not block the execution of another thread. You have to use MPI_Init_thread with MPI_THREAD_MULTIPLE.

> In general I also want to understand what does MPI_Probe do. In my limited imagination, I would see that the process (talking about no multithreading) polls messages from other processes. If so, how frequent does it look for the message?

You can assume that MPI_Probe blocks until a matching message arrives. How frequently it looks is implementation dependent.

Rajeev



More information about the mpich-discuss mailing list