(j3.2006) (SC22WG5.3660) [ukfortran] N1755: Request for new features from MPI Forum

Aleksandar Donev donev1
Tue Nov 11 16:46:17 EST 2008


Nick,

> Consider code like the following:
>
>     INTEGER, ASYNCHRONOUS :: fred
>     fred = 0
>     SYNC MEMORY
>     Nothing that uses fred
>     SYNC MEMORY
>     ... = fred
>
> With your proposal, the compiler has to assume that fred may have changed.
> Currently, it does not.
Wouldn't adding a new attribute ASYNC_EXTERNAL or some such fix this? This is 
one of the options mentioned.

> Consider the restrictions on VOLATILE arguments (e.g. no VALUE and no
> INTENT(IN), and the proposal to require it to be set in all scopes or
> none). How many of those would you need to add to ASYNCHRONOUS in order to
> close loopholes opened by your proposal?
Most of those restrictions apply to *both* VOLATILE and ASYNCHRONOUS (see 
Clause 12). If they don't, it is probably an existing bug in the standard!

> This one is very simple, anyway.  As far as the program is concerned, MPI
> transfers are semantically just a specialised form of I/O.  Does anyone
> seriously dispute that?
I am not, obviously I proposed to extend the already existing mechanisms we 
have for async Fortran I/O to cover user-defined data transfers.

Best,
Aleks



More information about the J3 mailing list