(j3.2006) [MPI3 Fortran] Feedback from Fortran J3 meeting
Dan Nagle
dannagle
Tue May 27 15:44:22 EDT 2008
Hello,
On May 27, 2008, at 1:17 PM, Aleksandar Donev wrote:
> On Tuesday 27 May 2008 08:55, Dan Nagle wrote:
>
>> What Fortran should say is "between these two subroutine references,
>> don't read/write this actual argument" and I don't think we currently
>> have a way to say that. :-(
> We don't, but we do have the BLOCK construct to delimit the region
> where
> touching the actual argument is "dangerous". There is a difference
> of course,
> as you say, VOLATILE allows one to reference/define the actual
> during the
> BLOCK and it is reloaded/loaded from memory thus possible messing up
> the MPI
> action. But in this case I think just trusting the programmer not to
> meddle
> with the actual (as per MPI standard instructions) inside the BLOCK
> is good
> enough of a solution, especially given MPI is external to our
> standard.
But the applications programmer doesn't want (in general) the effects
of the volatile to be limited to a block!
The programmer wants the don't-ask/don't-touch to apply from the
transfer call
to the wait call, which may be in different routines. Our standard
should be
consistent with the MPI specification. Thus, some other way of saying
so
should be sought. This is for the C TR, not f08.
I still say we boogalooed it.
--
Cheers!
Dan Nagle
More information about the J3
mailing list