<div class="gmail_quote">On Fri, Jun 1, 2012 at 2:30 PM, Jim Dinan <span dir="ltr"><<a href="mailto:dinan@mcs.anl.gov" target="_blank">dinan@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">
<div id=":4k3">That's a good point, and you can also use MPI_Win_test instead of wait to avoid blocking.  IIRC, this is still slightly more synchronizing than passive mode if you have multiple readers/writers in the active mode epoch.  All processes that access the window during the exposure epoch will need to be specified in the group argument to post/start and wait/test will need to also ensure that all processes in that group have called complete.  So, if you can use intermediate data from the writers, passive mode will give you more concurrency.<br>
</div></blockquote><div><br></div><div>Are you talking about MPI-2 passive mode or MPI-3 stuff like request-based RMA?</div><div><br></div><div>I see how MPI_Put is less synchronous with passive mode (although synchronization through some other channel is normally necessary for the target to know when some group of incoming writes have completed), but MPI_Get looks much more synchronous in passive mode (especially with MPI-2 semantics where only one target window can be accessed during a lock/unlock epoch). MPI_Rget seems to help with this.</div>
</div>