[MPI3 Fortran] Request for a straw vote.
Craig Rasmussen
crasmussen at newmexicoconsortium.org
Fri Jun 12 12:21:00 CDT 2009
On Jun 12, 2009, at 10:59 AM, Bill Long wrote:
>
>
> Craig Rasmussen wrote:
>> Bill, I'm not sure we are talking about the same thing. I'm
>> assuming the choice buffers are represented by DIMENSION(..) so the
>> MPI implementation must deal with dope vectors so the issue of copy-
>> in/copy-out doesn't come up. This is for any MPI call with a
>> "choice buffer" so it doesn't have anything to do MPI_Wait and
>> MPI_Request, ...
>
>
> The dimension(..) specification would be for the wrapper routine
> which turns around and calls the lower level C routine currently in
> the library. If the array is not contiguous, then either the
> transfer has to be done in contiguous chunks, or a local (inside the
> wrapper) contiguous copy is made before calling the lower level
> routine. Depending on the network characteristics, the later might
> be more efficient.
Yes, we are talking about a local (inside the wrapper) contiguous copy
being made before calling the lower level routine.
>
>
> The issue of deferred copy-out and temp deletion only affects the
> non-blocking routines. All of this would be handled in the wrappers
> - unseen by the Fortran user.
>
But I think we are still left a problem with non-blocking routines. I
think we need to disallow copy-in/copy-out with DIMENSION(..) and
BIND(C). Can this be done in Fortran standardeze?
-craig
More information about the mpiwg-fortran
mailing list