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 where the actual message passing progress occurs, too.

If you don't want to block waiting for the communication, you can keep an array 
of outstanding MPI_Requests and call MPI_Testall() on them to allow MPI to make 
progress on them, but not block your application until all (or any) of them 
complete.



> On Apr 3, 2015, at 3:43 AM, Matthieu Brucher <matthieu.bruc...@gmail.com> 
> wrote:
> 
> 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:48 GMT+01:00 Lei Shi <lei...@ku.edu>:
> 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 program is freezed several secs after 
> running some iterations (after multiple MPI_Isend/Irev callings), then 
> continues. It takes even more time than the case with MPI_Wait.  So my 
> question is how to do a "true" non-blocking communication without waiting for 
> the data ready or not. Thanks.
> 
> Sincerely Yours,
> 
> Lei Shi 
> ---------
> 
> 
> _______________________________________________
> users mailing list
> us...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
> Link to this post: 
> http://www.open-mpi.org/community/lists/users/2015/04/26596.php
> 
> 
> 
> -- 
> Information System Engineer, Ph.D.
> Blog: http://matt.eifelle.com
> LinkedIn: http://www.linkedin.com/in/matthieubrucher
> Music band: http://liliejay.com/
> _______________________________________________
> users mailing list
> us...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
> Link to this post: 
> http://www.open-mpi.org/community/lists/users/2015/04/26598.php


-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to: 
http://www.cisco.com/web/about/doing_business/legal/cri/

Reply via email to