Sender masks for gm_provide_recv_buffer*
Peter Boyle <[email protected]>
| Newsgroups | gmane.network.myrinet.general |
|---|---|
| Message-ID | <Pine.LNX.4.10.10008092359140.18976-100000@louie.physics.gla.ac.uk> |
Hi,
I've just joined this list and hope this isn't a recurring discussion.
I've just ported an MPI fortran code to use GM
in the time critical sections. The code uses a very symmetrical
(4d) cubic grid data decomposition.
For latency hiding reasons (among others), it is beneficial initiate 4
communications at a time, one for each dimension. Forcing a desired
receive buffer is problematic, and forced me to use the directed send.
However, as I read the documentation completion notification is
unavailable, and I am following the send up with a small "ping" message to
generate recv events.
I'd like to get rid of this extra send, while still maintaining
the current zero copy status of the code, and there are two obvious
solutions -
(i) completion notification for directed sends - though I presume
there is some reason for their absence?
(ii) A user assigned sender_id bitmask on receive buffers provided
to GM. For larger clusters I think I would get sufficient
selectivity to keep different dimensions going to different
buffers using, say, the low 64 or 128 bits, so it wouldn't require
huge amounts of storage and checking overhead.
Any thoughts/experiences?
Peter Boyle