[mpich-discuss] Non-blocking collectives

rreddypsc at gmail.com rreddypsc at gmail.com
Sat Jun 29 13:22:25 CDT 2013


I apologize for creating a new thread, I have accidentally deleted the 
original message.

Not to split hairs, can you please clarify the following:

After doing a non-blocking collective:

The MPI_Wait would be satisfied as soon as the other ranks in the 
communicator have called the non-blocking collective (and may not yet have 
called MPI_Wait), right?

Or do they wait until all of them have called MPI_Wait?

On the contrary, if one of the ranks calls MPI_Wait (without calling the 
non-blocking collective, which is an incorrect program), will the MPI_Wait 
be satisfied?

Thanks,

Raghu

[mpich-discuss] Non-blocking Collectives
Jiri Simsa jsimsa at cs.cmu.edu
Thu Jun 27 10:33:14 CDT 2013

    Previous message: [mpich-discuss] Non-blocking Collectives
    Next message: [mpich-discuss] PMGR_COLLECTIVE ERROR
    Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

Hi Pavan,

To rephrase, I am interested in understanding when would MPI_Wait() block
indefinitely, waiting for other process to make progress. I believe that
your response answers my question. Thanks again.

--Jiri


On Wed, Jun 26, 2013 at 4:48 PM, Pavan Balaji <balaji at mcs.anl.gov> wrote:

> Hi Jiri,
>
>
> On 06/26/2013 03:08 PM, Jiri Simsa wrote:
>
>> Thank you for your quick answer. I am trying to understand the blocking
>> behavior of MPI_Wait in the case of non-blocking collectives. Is it safe
>> to assume that, for a non-blocking collective, MPI_Wait is guaranteed to
>> return once all other processes call the corresponding completion
>> operation (e.g. MPI_Wait or MPI_Test)?
>>
>
> I'm not sure I understand your question.  Are you asking if MPI_WAIT in a
> process is guaranteed to return after some finite amount of time after
> every other process has called MPI_WAIT?  Then, yes.
>
>
> --
> Pavan Balaji
> http://www.mcs.anl.gov/~balaji




More information about the discuss mailing list