(j3.2006) MPI usage problems in Fortran

Bill Long longb
Wed Mar 19 15:14:00 EDT 2008



Aleksandar Donev wrote:
> On Wednesday 19 March 2008 11:54, Bill Long wrote:
>   
>> If the programmer knows the I/O operations complete before return, then
>> it is not necessary to specify the ASYNCHRONOUS attribute in the
>> declaration of the dummy variable involved in the I/O operation.   It is
>> automatically implied by the variable being in the I/O list of the async
>> I/O statement.
>>     
> I'll throw it back at you: Same question, but for VOLATILE attribute, which as 
> you said is a less-restricted version of ASYNCHRONOUS. There is no "implicit 
> VOLATILE" that will save you.
>   
Volatile is essentially an instruction to the compiler to shut down 
optimization for a variable with that attribute.  The user makes this 
declaration exactly because that is the effect wanted.  I agree there is 
no implicit way for something to get the volatile attribute.  The user 
is responsible for knowing within which program units the variable is 
subject to volatile changes, and give the variable the volatile 
attribute in those units.  Despite being in the standard for only 5 
years, volatile has been used effectively in actual implementations for 
decades.

Cheers,
Bill





> Aleks
>
> _______________________________________________
> J3 mailing list
> J3 at j3-fortran.org
> http://j3-fortran.org/mailman/listinfo/j3
>   

-- 
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 J3 mailing list