<div dir="ltr">It's the user's responsibility. The only guarantee made by MPI_Send is that the data can be overwritten by the user. This may mean that it's copied into a buffer locally and will be sent later. If the data is being sent eagerly, this is exactly what's happened. If you want to make sure the data is actually received, you need to use MPI_Ssend.</div>

<div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Apr 16, 2014 at 4:36 PM, Lu, Huiwei <span dir="ltr"><<a href="mailto:huiweilu@mcs.anl.gov" target="_blank">huiweilu@mcs.anl.gov</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">One of our group members is using MPI_Send in his program without receiving. I am surprised why his program will finish.<br>


<br>
Here is the program:<br>
<br>
#include <mpi.h><br>
#include <stdio.h><br>
int main(int argc,char** argv)<br>
{<br>
    int rank;<br>
    int size;<br>
    MPI_Init(&argc, &argv);<br>
    MPI_Comm_rank(MPI_COMM_WORLD,&rank);<br>
    MPI_Comm_size(MPI_COMM_WORLD,&size);<br>
<br>
    int aa = 10;<br>
    if(rank == 0) {<br>
        MPI_Send(&aa, 1, MPI_INT, 1, 0,MPI_COMM_WORLD);<br>
    }<br>
    MPI_Barrier(MPI_COMM_WORLD);<br>
    printf("%d, complete barrier!\n",rank);<br>
<br>
    MPI_Finalize();<br>
}<br>
<br>
When I run the above program with: mpiexec -n 2 ./mpi_send. The output is:<br>
0, complete barrier!<br>
1, complete barrier!<br>
In direct memory block for handle type REQUEST, 1 handles are still allocated<br>
[1] 8 at [0x00007fe79a7026b8], src/mpid/ch3/src/ch3u_eager.c[440]<br>
<br>
The warning tells me the send message is sent using eager protocol. Is it right behavior for an MPI_Send to return without actually delivering the data?<br>
Or is it user’s responsibility to pair all the send/receive calls.<br>
<br>
—<br>
Huiwei Lu<br>
Postdoc Appointee<br>
Mathematics and Computer Science Division, Argonne National Laboratory<br>
<a href="http://www.mcs.anl.gov/~huiweilu/" target="_blank">http://www.mcs.anl.gov/~huiweilu/</a><br>
<br>
_______________________________________________<br>
discuss mailing list     <a href="mailto:discuss@mpich.org">discuss@mpich.org</a><br>
To manage subscription options or unsubscribe:<br>
<a href="https://lists.mpich.org/mailman/listinfo/discuss" target="_blank">https://lists.mpich.org/mailman/listinfo/discuss</a><br>
</blockquote></div><br></div>