[Mpi3-rma] Updated Proposal 1
dinan at mcs.anl.gov
Wed Dec 8 00:45:34 CST 2010
On 12/8/10 12:32 AM, Pavan Balaji wrote:
> On 12/08/2010 12:25 AM, Underwood, Keith D wrote:
>>> (b) Do we know any network (except ones that emulate one-sided
>>> communication over two-sided messaging) that provide strict
>>> ordering? As far as I know, most networks only provide ordering
>>> between PUTs (or atomic PUTs). Ordering between GETs is also not
>>> provided, unless the user does a flush after each GET operation. Is
>>> this only for convenience?
>> This ordering mode is what happens for UPC relaxed mode, so,
>> presumably, some networks have some rational way to support it. Not
>> that I am claiming that supporting that is easy if the network uses
>> end-to-end retransmits for reliability...
> Agreed. In fact, I believe ARMCI's semantics are also similar -- PUT to
> a location followed by a GET from the same location will return the same
> value. And GET followed by a PUT does not corrupt the data being received.
> Maybe someone familiar with ARMCI on the list can tell us how they
> achieve this on any network? Is there an internal flush before/after
> each GET operation?
Put followed by a get is location consistent: the get will give you the
back value you just put (although I'm not sure how much GA relies on
this behavior). For a get followed by a put, the get operation is
blocking and doesn't return until data is present in the local buffer.
So, corruption by a subsequent put/acc operation is not really possible.
More information about the mpiwg-rma