[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
Hubert
________________________________________
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
same_op_no_op.
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.
~Jim.
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
http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-rma
Click https://www.mailcontrol.com/sr/5mNGp1xC+PTGX2PQPOmvUi5k6UwC8217lo8Osznu0yDs2GekgWk4!UlNU4eUFZip0S2vc9r44Dsc91rCvtNOsA== to report this email as spam.
More information about the mpiwg-rma
mailing list