[Mpi3-rma] Target displacement in dynamic windows

Jim Dinan dinan at mcs.anl.gov
Tue Sep 18 16:42:18 CDT 2012


Here is the full, proposed erratum:

--snip--

In Section 11.2.4, page 412, line 26 the following sentence is added:

For dynamic windows, the target_disp argument to RMA communication 
operations is not restricted to non-negative values.

In addition, the following advice to users is added on line 29.

Users are cautioned that displacement arithmetic can overflow in 
variables with MPI_Aint type and result in unexpected values on some 
platforms.  This issue will be addressed in a future version of MPI.

--snip--

  ~Jim.

On 9/18/12 10:25 AM, Jim Dinan wrote:
> It is page 412, line 26 in the clean build of approved/MPI-3.0.
>
>   ~Jim.
>
> On 9/17/12 9:23 PM, Rajeev Thakur wrote:
>> The errata will need to identify the page and line at which the exact
>> text should be inserted or changed.
>>
>> Rajeev
>>
>> On Sep 17, 2012, at 4:12 PM, Jim Dinan wrote:
>>
>>> Hi All,
>>>
>>> In today's meeting, we arrived at the following approach to
>>> addressing the target displacements issue for dynamic windows:
>>>
>>> The MPI 3.0 errata should include the following two statements:
>>>
>>> 1. For dynamic windows, the target_disp argument to RMA communication
>>> operations is not restricted to non-negative values.
>>>
>>> 2. Users are cautioned that displacement arithmetic can overflow in
>>> variables with MPI_Aint type and result in unexpected values on some
>>> platforms.  This issue will be addressed in a future version of MPI.
>>>
>>> In MPI 3.1, we will look at two possible mechanisms for providing
>>> safe offset arithmetic:
>>>
>>> 1. MPI_Get_pointer(MPI_Aint address, void *ptr), which will allow a
>>> user to convert between addresses and pointers.
>>>
>>> 2. MPI_Auint -- an address integer which can represent the full range
>>> of MPI_Aint as a positive integer.  This could be an unsigned
>>> integer, but for Fortran compatibiliy, it may need to be a singed
>>> integer that's larger than MPI_Aint.  The following conversion
>>> functions would be provided:
>>>
>>> MPI_Get_auint(MPI_Aint addr, MPI_Auint *uaddr)
>>> MPI_Get_aint(MPI_Auint uaddr, MPI_Aint *addr)
>>>
>>> Please send comments.  Thanks,
>>>
>>> ~Jim.
>>
> _______________________________________________
> mpi3-rma mailing list
> mpi3-rma at lists.mpi-forum.org
> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-rma



More information about the mpiwg-rma mailing list