[MPI3 Fortran] [Fwd: Was ASYNCHRONOUS..., New: ACCESSES ( ) suffix

Bill Long longb at cray.com
Wed Sep 10 18:00:39 CDT 2008



Aleksandar Donev wrote:
> On Wednesday 10 September 2008 11:54, Bill Long wrote:
>   
>> The compiler also knows which variables are
>> 'tainted' either by explicit declaration or by inference from looking at
>> I/O lists.
>>     
> You mean, it assumes that all variables with the ASYNCHRONOUS attribute are 
> tainted?
>   

Right, but tainted in a specific way. This tells the compiler to not 
move accesses to these variables across a WAIT statement.   WAIT 
statements are treated specially by the compiler.  In contrast, a call 
to MPI_Wait is just like any other call.   The idea behind the accesses( 
) suffix is to make the associated subroutine be treated a similar 
special way.    It also gets around the problem of needing to modify the 
source to declare buffer asynchronous.

Cheers,
Bill


> This is exactly what my proposal said.
>
> Or are you talking about something cleverer, where the compiler knows exactly 
> *which* variables are tainted among those with the attribute. If so, what 
> about separate compilation?
>
> Best,
> Aleks
>
>   

-- 
Bill Long                                   longb at cray.com
Fortran Technical Support    &              voice: 651-605-9024
Bioinformatics Software Development         fax:   651-605-9142
Cray Inc., 1340 Mendota Heights Rd., Mendota Heights, MN, 55120

            




More information about the mpiwg-fortran mailing list