Re: [MPI3 Fortran] MPI non-blocking transfer
On Feb 9, 2009, at 4:06 PM, Aleksandar Donev wrote:
On Monday 09 February 2009 14:57, Rolf Rabenseifner wrote:
2.3 The existing solution must continue to work, i.e., all existing and correct MPI applications must continue to work.
There is no "existing solution", unless you count VOLATILE, which is only standard as of Fortran 2003. As you say,
I would like to reiterate, the MPI Forum has already received guidance from the J3 Fortran committee regarding this issue. The guidance is to use the volatile attribute. I can dig up and resend the official J3 document if you want. I'll also discuss it further this afternoon and tomorrow. But I'm not sure the guidance will change. Somehow the user must give the compiler specific instruction about the usage of the buffer within the Fortran language. You don't really want Fortran to treat buffers like C does as that will slow down all of your Fortran program. Cheers, Craig
2.4 It is not my goal to automatically correct existing wrong MPI applications, i.e., applications without the DD trick
the DD thing is a trick (I call them hacks), and actually does not solve the full problem, e.g., Nick has pointed out that problems can occur at the site of the call to MPI_Isend, *not* just the site of the wait (but the cases when it fails are marginal and likely do not happen often enough to notice). Best, Aleks -- Aleksandar Donev, Ph.D. Lawrence Postdoctoral Fellow @ Lawrence Livermore National Laboratory High Performance Computational Materials Science and Chemistry E-mail: [email protected] 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
participants (1)
-
Craig Rasmussen