[libfabric-users] connection-less endpoints and TCP services

Maurizio Drocco drocco at di.unito.it
Thu Mar 30 00:23:29 PDT 2017

> I'm not sure of your requirements yet, but it sounds like you need some sort of table that maps your node:service to the AV index.
Indeed for the mapping I'm happy with fi_av_insertsvc plus internal 
mapping from process index (analogous to MPI rank) to av index.
>> In other words, I don't know how to create an (active, connection-
>> less)
>> endpoint that accepts data only from node:service. I guess it can be
>> done by setting properly some flags to fi_getinfo (e.g., node/service
>> parameter or src_addr/dest_addr hints), but I read the documentation
>> thoroughly and I couldn't figure out how to do that.
> This is where I got lost.  What you do mean create a connectionless endpoint that only accepts data from a specific node:service?  Do you only want the EP to receive data from a single peer?
Sorry, saying "from" is confusing. I meant the EP to receive data coming 
to its node:service.

Let me explain with a minimal example: 3 processes, mapped to node:svc1, 
node:svc2, node:svc3 (same node, different services). All processes have 
the same AV table:
1 -> node:svc1
2-> node:svc2
3 -> node:svc3

On process 1, how do I create an EP that receives all data sent to AV 
index 1 by any other process?

In connection-oriented scenario, I would do that by calling fi_getinfo with:
node=NULL, service=svc1, flags=FI_SOURCE
but from the documentation this seems tailored to connection-oriented 

Maurizio Drocco
PhD Student
University of Torino, department of Computer Science
Via Pessinetto 12, 10149 Torino - Italy

More information about the Libfabric-users mailing list