[libfabric-users] A couple more questions
Biddiscombe, John A.
biddisco at cscs.ch
Tue Feb 28 15:17:24 PST 2017
There's only one endpoint that you need to manage, so all posted buffers go to that. It's also easier to make use of the 'multi-recv' feature of OFI, that allows you to post one big buffer to receive messages into, rather than many separate buffers. But reliable-connected endpoints may be a better match if you are trying to separate traffic to different clients.
Much of this depends on what hardware you will be running over and how soon. Eventually all endpoint types will be available over all hardware, but we're not quite there yet.
Well that sounds fine. The caveat being that ‘yes” I need to manage traffic depending on the endpoint, but assuming I receive a message, as long as I can find out which client (address) it came from, then that’s the main thing. Not being able to know from where the message came would be somewhat useless so I guess I can switch to the connectionless mode.
Currently when I receive a message with (for example) an rdma read request, I have to read from that client (endpoint), with a connectionless mode, I would no doubt have the address rather than the endpoint pointer, and as long as I can post a read (once I get that to work), then all is fine.
The multi-recv feature would be a truly wonderful thing (for gni, but not verbs unfortunately) – it’s a real game changer being able to handle receives that go over the nominal size of the buffers that are pre-posted – can’t wait to try it. Might mean a major redesign of code though.
I’ll look into AVs and how to go connectionless.
More information about the Libfabric-users