[Mpi3-rma] Info accumulate_ops

Hubert Ritzdorf Hubert.Ritzdorf at EMEA.NEC.COM
Tue Oct 23 12:03:37 CDT 2012

Hi Thorsten and Jim,

thanks for the advice. My fault. I didn't carefully  read the section
 "SEMANTICS AND CORRECTNESS" in the (old) document.

Sorry to bother you

From: mpi3-rma-bounces at lists.mpi-forum.org [mpi3-rma-bounces at lists.mpi-forum.org] on behalf of Jim Dinan [dinan at mcs.anl.gov]
Sent: Tuesday, October 23, 2012 5:13 PM
To: mpi3-rma at lists.mpi-forum.org
Subject: Re: [Mpi3-rma] Info accumulate_ops

+1 to Torsten's comment.

My reading of the current text "default" would indicate that the user
should be able to query this info key and get same_op_no_op unless they
have set it to same_op.  If this is not allowed or what we intended, an
errata to clarify this seems reasonable.  We could indicate a text
change from:

The default is same_op_no_op.

to something like:

When this info key is not specified, the default behavior assumes

Hubert, concurrent accumulate operations with different ops, targeting
the same location is forbidden by the MPI-2 and MPI-3 standards.  We
added an exception for no_op in MPI-3, which the user can disable as a
performance hint.


On 10/19/12 1:38 PM, Torsten Hoefler wrote:
> On Tue, Oct 16, 2012 at 01:35:08PM +0000, Hubert Ritzdorf wrote:
>>     Hi,
>>     I think that there is a problem in the definition of info argument
>>     "accumulate_ops" of MPI_Win_create functions (Page 406, Line 4-9
>>     of MPI 3.0 document).
>>     (*) A value is missing if not all concurrent accumulate calls perform the
>>          same operation.
>>          Possible values might be: "not_same_op" or "false"
> This would be illegal (as described in the semantics section). The NO_OP
> was an exception to allow querying a flag with our "fake atomic reads"
> while performing atomic updates CAS etc.. So really only the two
> mentioned combinations are legal.
>>     (*) The actual default value of "same_op_no_op" breaks the backward
>>           compatibility and causes problems in portability of applications,
>>     since a MPI
>>           implementation is not required to evaluate (recognize) info keys.
>>           Therefore, "not_same_op" must be the default value of info argument
>>           "accumulate_ops".
> Default value means that this is the default semantic if the key is not
> set (or not evaluated). So a valid user program in MPI-2.2 was only
> allowed to use the same OP for concurrent accumulates. In MPI-3.0 it may
> use the same op and also NO_OP in addition. Thus, this richer semantic
> cannot break backward compatibility. Setting the info key enables the
> user to enable the more limited MPI-2.2 semantics which may unlock a set
> of richer optimizations possible in the library.
> Best,
>    Torsten
mpi3-rma mailing list
mpi3-rma at lists.mpi-forum.org

 Click https://www.mailcontrol.com/sr/5mNGp1xC+PTGX2PQPOmvUi5k6UwC8217lo8Osznu0yDs2GekgWk4!UlNU4eUFZip0S2vc9r44Dsc91rCvtNOsA==  to report this email as spam.

More information about the mpiwg-rma mailing list