(j3.2006) referencing co-array variable that is an ultimate argument

Aleksandar Donev donev1
Wed May 23 20:51:27 EDT 2007


Wording issues aside (i.e., whether the words in should be 
explicitly qualified with "the same image"):

> (b) destroys optimisation.
What optimizations does it destroy and why? If the dummy is a co-array, then 
it is clear that other images may be changing values in it, subject to the 
stringent segment ordering restrictions. This destroys no 
optimizations---values referenced or defined by the image in question will 
not be touched by other images. Maybe the restriction we have on dummies is 
stronger (it says that no part of the dummy shall be touched other than via 
the dummy, not just those parts referenced or defined in the procedure), but 
co-arrays do not affect local variables which behave the same and exactly the 
same optimizations are possible.

If the dummy is not a co-array and the actual is a subobject of one, then 
there is an issue as we do want the compiler to be able to do exactly the 
same optimizations as if co-arrays did not exist, since it cannot see that 
the actual is a co-array and may be modified by other images. Our attempt at 
plugging that hole are the words in 197:21-23.


Aleksandar Donev, Ph.D.
Lawrence Postdoctoral Fellow @ LLNL
High Performance Computational Materials Science and Chemistry
E-mail: donev1 at llnl.gov
Phone: (925) 424-6816  Fax: (925) 423-0785
Address: P.O.Box 808, L-367, Livermore, CA 94551-9900
Web: http://cherrypit.princeton.edu/donev

More information about the J3 mailing list