Re: [OMPI users] Can I just use non-blocking send/receive without calling MPI_Wait ever

2015-04-03 Thread Jeff Squyres (jsquyres)
On Apr 3, 2015, at 12:50 PM, Lei Shi wrote: > > P.S. Pavan suggests me to use MPI_Request_free. I will give it a try. Keep in mind that you have zero indication of when a send or receive completes if you MPI_Request_free (Pavan implied this, too). You could be reading half a message from a p

Re: [OMPI users] Can I just use non-blocking send/receive without calling MPI_Wait ever

2015-04-03 Thread Lei Shi
Hi Jeff, Yes, the memory issue caused by Isend/Irecv without calling MPI_Wait probably is the reason. Attached is my test results showing that calling MPI_Isend without using MPI_Wait at all leads to a wired wtime for my program. The Wtime should be linear, but some jumps show up after several ite

Re: [OMPI users] Can I just use non-blocking send/receive without calling MPI_Wait ever

2015-04-03 Thread Lei Shi
Hi Matthieu, Thanks for your help. That is my understanding too and is verified by my test code. But I think there may be still a way to do it without calling wait or test. For my case, I just don't need to worry about the received data is correct or not (latest one or the old initial data) Since

Re: [OMPI users] Can I just use non-blocking send/receive without calling MPI_Wait ever

2015-04-03 Thread Jeff Squyres (jsquyres)
In the general case, MPI defines that you *have* to call one of the MPI_Test or MPI_Wait functions to finish the communication request. If you don't do so, you're basically leaking resources (e.g., memory). In a single-threaded MPI implementation, the call to MPI_Test/MPI_Wait/etc. may be wher

Re: [OMPI users] Can I just use non-blocking send/receive without calling MPI_Wait ever

2015-04-03 Thread Matthieu Brucher
Hi, I think you have to call either Wait or Test to make the communications move forward in the general case. Some hardware may have a hardware thread that makes the communication, but usually you have to make it "advance" yourself by either calling Wait ot Test. Cheers, Matthieu 2015-04-03 5:4

[OMPI users] Can I just use non-blocking send/receive without calling MPI_Wait ever

2015-04-03 Thread Lei Shi
I want to use non-blocking send/rev MPI_Isend/MPI_Irev to do communication. But in my case, I don't really care what kind of data I get or it is ready to use or not. So I don't want to waste my time to do any synchronization by calling MPI_Wait or etc API. But when I avoid calling MPI_Wait, my pr