(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