LAM/MPI logo

LAM/MPI General User's Mailing List Archives

  |   Home   |   Download   |   Documentation   |   FAQ   |   all just in this list

From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2004-06-28 12:37:33


This is the mail where Jeff eats crow.

Oops -- I was wrong. Somehow I had it in my head that it had to be the
same source/dest, communicator, and tag, and that was *nearly* correct --
but it's actually a "matching message" on the receiver. And a matching
message may include the use of MPI_ANY_TAG. Hence, sending from process A
to process B on the same communicator with a variety of different tags
will be received in the same order if the reciver always uses
MPI_ANY_SOURCE (other possibilities are also possible; this is the easiest
to describe).

So "Bad Jeff" for not checking the standard before answering, "Good Dave"
for calling him on it, and "Good Jeff" for ensuring that LAM actually does
the Right Things (despite what he said in prior mails). Since LAM is
single threaded, the paragraph in section 3.5 of MPI-1.1 is pretty clear,
and that *is* what LAM does.

Sorry for the confusion; thanks for the correction...

On Mon, 28 Jun 2004, David Cronk wrote:

>
>
> Jeff Squyres wrote:
>> On Sat, 26 Jun 2004 hye_at_[hidden] wrote:
>>
>
> [snip]
>
>
>>>
>>> My question is: is the First-sent-First-Received can be guaranteed? For
>>> example, if one processor sends out message to other processor using
>>> MPI_Isend or MPI_Send or both, in the sequence of TAG1, TAG2, TAG1,
>>> TAG3, TAG2. Can it be guaranteed that, in the receiver side, the
>>> sequence is still TAG1, TAG2, TAG1, TAG3, TAG2?
>>
>>
>> No.
>>
>> MPI only guarantees that the order of messages sent with the same
>> signature (i.e., sender and receiver, communicator, and tag) are ordered.
>> Hence, it is possible (and legal) for MPI to allow messages with different
>> tags to be delivered out of order (even with ANY_TAG).
>
> The way I read the standard (page 29 of 1.0 standard and page 30 of the 1.1
> standard) this is incorrect as order is guaranteed even with different tags.
> Same sender, receiver, and communicator yes, but the tags can differ. This
> is explicitely covered on page 53 of "MPI - The Complete Reference Volume 1,
> The MPI Core" Second edition.
>
> Dave.
>
>>
>>
> [snip]
>
>

-- 
{+} Jeff Squyres
{+} jsquyres_at_[hidden]
{+} http://www.lam-mpi.org/