[Mpi-forum] Wording in MPI standard

Bronis R. de Supinski bronis at llnl.gov
Mon Nov 26 13:22:03 CST 2012


Scott:

My apologies. I misread your message. I thought
you were referring to the last sentence in the
paragraph, which says "and even if no call is
executed to complete the receive". I agree with
your suggestion that "should" should be changed
to "must" in "the receive should complete even
if no call is executed by the sender to complete
the send" ("shall" would also work).

Bronis


On Mon, 26 Nov 2012, Scott Pakin wrote:

> Bronis,
>
> On 11/26/2012 11:44 AM, Bronis R. de Supinski wrote:
>> The problem with your suggestion is that completion
>> has a well defined meaning in MPI that requires the
>> completion call. If the receive completed without
>> any call then a subsequent attempt to complete it
>> would be an error. I believe that is reason the term
>> "satisfied" was used.
>
> The current text says that "the receive *should* complete even if no
> call is executed by the sender to complete the send."  If a subsequent
> attempt to complete such a send would be an error, then the standard
> would have to say, "the receive *must not* complete even if no call is
> executed by the sender to complete the send," which is in disagreement
> with what a typical (all?) MPI implementation does.
>
> I'm merely taking issue with the use of "should," which seems to let
> an MPI implementation decide whether to complete the receive but not
> allow applications to rely on this happening.  "Must" or "is required
> to" would let applications reason better about progress.
>
> -- Scott
>



More information about the mpi-forum mailing list