[Mpi-22] Ordering guarantees and multiple threads

Greg Bronevetsky bronevetsky1 at [hidden]
Fri Mar 27 12:25:29 CDT 2009



At 09:35 AM 3/27/2009, Darius Buntinas wrote:

>I've just created a ticket:
>   https:// svn.mpi-forum.org/trac/mpi-forum-web/ticket/144
>to suggest that we strengthen the ordering guarantees between sends (and
>receives) from different threads.
>
>I think that the real question here is whether the potential benefit to
>the user outweighs the potential for optimization in a multithreaded
>implementation.
>
>Please have a look at it and feel free to comment.

I like the spirit of this proposal but in practice it will be hard to 
specify. In particular, consider the sentence "two sends do not 
overlap if the first MPI_Send() returns before the second MPI_Send() 
is called". The word "before" here is only properly defined on a 
sequentially consistent memory. On any other memory model "before" is 
only defined by synchronization primitives supplied by the shared 
memory system. As such, I don't know how to be precise about 
something like "before" without talking about the shared memory 
system. This will be hard because we'll need to talk about concepts 
that all these systems share but for which they all provide different 
primitives and semantics. I don't know how the wider forum will react 
to such a specification. However, I agree that something like this is 
necessary.

Greg Bronevetsky
Post-Doctoral Researcher
1028 Building 451
Lawrence Livermore National Lab
(925) 424-5756
bronevetsky1_at_[hidden]
http://greg.bronevetsky.com 



More information about the Mpi-22 mailing list