(j3.2006) (SC22WG5.3922) [MPI3 Fortran] (SC22WG5.3917) (SC22WG5.3909) [ukfortran] [MPI3 Fortran] MPI non-blocking transfers
Fri Jan 23 23:20:23 EST 2009
Van Snyder wrote:
> Just write an extra layer to get at MPI_wait, having an assumed-shape
> buffer dummy argument with the ASYNCHRONOUS attribute and without the
> CONTIGUOUS attribute. Since the buffer dummy won't be referenced, make
> the procedure external, or better yet, write it in C, so a clever
> optimizer won't inline it, notice the buffer isn't used, and then move
> accesses to the buffer across the remaining reference to MPI_wait, which
> is the present problem.
> Make this layer generic with MPI_wait. Tell users to put the buffer or
> something associated with it, if one is in scope, as the associated
> actual argument, and tell them why.
If there were an emoticon for throwing up in disgust I would put it
here! This is horrid. Why don't you just tell the user "don't use
asynchronous data transfers"???
> Since we already have a solution, I don't see the need for another one,
Well I do, since your solution is such a mess it is not really a solution.
Yes, you can do HACKs. That is NOT a "solution".
More information about the J3