<html><body>
<p>But the MPI standard says this is valid and can be used to avoid the need to keep track of ISEND request handles. It is clear that if the matching RECV has completed then the unaltered  content of the ISEND buffer is no longer needed. The RECV cannot have completed unless the message got out.<br>
<br>
Erez is pointing out a case where the semantic stipulated by the MPI standard back before RDMA adapters were available becomes flawed with the way RDMA adapters now work. The <b>content</b> of the ISEND buffer is irrelevant once the destination RECV has completed but some other things about the ISEND buffer are still in limbo<br>
<br>
Dick Treumann  -  MPI Team/TCEM            <br>
IBM Systems & Technology Group<br>
Dept 0lva / MS P963 -- 2455 South Road -- Poughkeepsie, NY 12601<br>
Tele (845) 433-7846         Fax (845) 433-8363<br>
<br>
<br>
<tt>mpi-22-bounces@lists.mpi-forum.org wrote on 07/17/2008 05:14:42 PM:<br>
<br>
> On Thu, Jul 17, 2008 at 03:46:59PM -0400, Richard Treumann wrote:<br>
> > Sorry - the discussion is in the context of MPI_REQUEST_FREE.<br>
> > <br>
> > MPI_ISEND(question_buffer .....    request)<br>
> > MPI_REQUEST_FREE(request)<br>
> > MPI_RECV( reply_buffer)<br>
> > free(question_buffer)<br>
> <br>
> Perhaps an implementer would dodge this bullet by having<br>
> MPI_REQUEST_FREE do a MPI_CANCEL before freeing anything? That's<br>
> assuming you have MPI_CANCEL on a send do the right thing.<br>
> <br>
> Thus, we turn this new can of worms into an existing can of<br>
> worms. Voila!<br>
> <br>
> The example above strikes me as being undefined behavior in any case.<br>
> I don't think we would guarantee that the message got out at all, and<br>
> even if the remote side thinks the message is complete, that doesn't<br>
> mean that the sender agrees the message is complete, without calling<br>
> WAIT.<br>
> <br>
> -- greg<br>
> <br>
> _______________________________________________<br>
> mpi-22 mailing list<br>
> mpi-22@lists.mpi-forum.org<br>
> <a href="http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-22">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-22</a><br>
</tt></body></html>