> > However, some codes can be optimized further by replacing the barrier
> > with point-to-point synchronization with each of a small number of neighbors.
> If synchronization is pt2pt with a small # of neighbours, why can't a
> high-quality MPI-1 implementation be used?
You are correct that the synchronization flag style of communication maps
conceptually very well to 2-sided communication.
But... Send/recv must do more sophisticated data handling than PUT/GET.
Usually enqueuing and dequeing of messages is needed with send/recv.
Furthermore, multiple neighbors are sending completion notification
concurrently, so there may be stome stacking up on queue locks.
Thus PUT/GET latency should be much lower than send/recv.
I agree that most users will use barriers for synchronization, so
efficiency of RMA used in concert with barriers is of utmost importance.
> ... It's these application I'd like to see 1-sided target, and not try
> to duplicate the pt2pt functionality.
The flag-setting stuff does in a sense duplicate pt2pt functionality,
but the latency difference is so dramatic that many of our users take
advantage of 1-sided communication for this purpose.
Karl Feind E-Mail: firstname.lastname@example.org
Cray Research, an SGI Company Phone: 612/683-5673
655F Lone Oak Drive Fax: 612/683-5276
Eagan, MN 55121