-
Notifications
You must be signed in to change notification settings - Fork 386
Provider Feature Matrix v1.5.x
Sean Hefty edited this page Apr 23, 2020
·
1 revision
The tables below indicate which features are supported by which in-tree libfabric providers. Please update the tables as appropriate if you see a box that hasn't been assessed or an incorrect mark in one of the boxes.
✓ = well supported
* = limited support (e.g., not supported for all endpoint types or not optimal for performance)
❌ = not supported
R = required mode bit
O = optional mode bit
(no mark) = not applicable or not needed
? = provider hasn't been assessed yet for this feature
C = same as that of Core provider.
Endpoint Types | bgq | gni | mlx | nd | psm | psm2 | rxm | sockets | udp | usnic | verbs |
---|---|---|---|---|---|---|---|---|---|---|---|
FI_EP_DGRAM |
❌ | ✓ | ❌ | ❌ | ✓ | ✓ | ❌ | ✓ | ✓ | ✓ | ❌ |
FI_EP_MSG |
❌ | ✓ | ❌ | ✓ | ❌ | ❌ | ❌ | ✓ | ❌ | * | ✓ |
FI_EP_RDM |
✓ | ✓ | * | ❌ | ✓ | ✓ | ✓ | ✓ | ❌ | * | * |
Primary Capabilities | bgq | gni | mlx | nd | psm | psm2 | rxm | sockets | udp | usnic | verbs |
---|---|---|---|---|---|---|---|---|---|---|---|
FI_MSG |
✓ | ✓ | ❌ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
FI_RMA |
✓ | ✓ | ❌ | ✓ | ✓ | ✓ | ✓ | ✓ | ❌ | ❌ | * |
FI_TAGGED |
✓ | ✓ | ✓ | ❌ | ✓ | ✓ | ✓ | ✓ | ❌ | ❌ | * |
FI_ATOMIC |
✓ | ✓ | ❌ | ❌ | ✓ | ✓ | ❌ | ✓ | ❌ | ❌ | * |
FI_NAMED_RX_CTX |
✓ | ✓ | ❌ | ❌ | ❌ | ✓ | ❌ | ✓ | ❌ | ❌ | ❌ |
FI_DIRECTED_RECV |
✓ | ✓ | ❌ | ❌ | ❌ | ✓ | ✓ | ✓ | ❌ | ❌ | ❌ |
FI_READ |
✓ | ✓ | ❌ | ✓ | ✓ | ✓ | ✓ | ✓ | ❌ | ❌ | ✓ |
FI_WRITE |
✓ | ✓ | ❌ | ✓ | ✓ | ✓ | ✓ | ✓ | ❌ | ❌ | ✓ |
FI_SEND |
✓ | ✓ | ❌ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | * | ✓ |
FI_RECV |
✓ | ✓ | ❌ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | * | ✓ |
FI_REMOTE_READ |
✓ | ✓ | ❌ | ✓ | ✓ | ✓ | ✓ | ✓ | ❌ | ❌ | ✓ |
FI_REMOTE_WRITE |
✓ | ✓ | ❌ | ✓ | ✓ | ✓ | ✓ | ✓ | ❌ | ❌ | ✓ |
FI_MULTICAST |
? | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | * | ❌ | ❌ |
Secondary Capabilities | bgq | gni | mlx | nd | psm | psm2 | rxm | sockets | udp | usnic | verbs |
---|---|---|---|---|---|---|---|---|---|---|---|
FI_MULTI_RECV |
✓ | ✓ | ❌ | ❌ | ✓ | ✓ | ❌ | ✓ | ❌ | ❌ | * |
FI_SOURCE |
✓ | ✓ | ❌ | ❌ | ✓ | ✓ | ✓ | ✓ | ✓ | ❌ | |
FI_SOURCE_ERR |
? | ✓ | ? | ? | ? | ? | ❌ | ? | ? | ? | |
FI_RMA_EVENT |
❌ | ✓ | ❌ | ❌ | ✓ | ✓ | ❌ | ✓ | ❌ | ❌ | ❌ |
FI_TRIGGER |
❌ | ✓ | ❌ | ❌ | ✓ | ✓ | ❌ | ✓ | ❌ | ❌ | ❌ |
FI_FENCE |
✓ | ✓ | ✓ | ❌ | ❌ | ❌ | ❌ | ✓ | ❌ | ❌ | ❌ |
FI_LOCAL_COMM |
? | ✓ | ✓ | ❌ | ✓ | ✓ | C | ✓ | ✓ | ❌ | ✓ |
FI_REMOTE_COMM |
? | ✓ | ✓ | ✓ | ✓ | ✓ | C | ✓ | ✓ | ✓ | ✓ |
Modes | bgq | gni | mlx | nd | psm | psm2 | rxm | sockets | udp | usnic | verbs |
---|---|---|---|---|---|---|---|---|---|---|---|
FI_CONTEXT |
R | R | R | R | R | O | |||||
FI_CONTEXT2 |
? | ||||||||||
FI_LOCAL_MR |
R | R | R | ||||||||
FI_MSG_PREFIX |
R | ||||||||||
FI_ASYNC_IOV |
R | ||||||||||
FI_RX_CQ_DATA |
O | R | |||||||||
FI_NOTIFY_FLAGS_ONLY |
? | ? | |||||||||
FI_RESTRICTED_COMP |
? | ? |
Memory Registration Modes | bgq | gni | mlx | nd | psm | psm2 | rxm | sockets | udp | usnic | verbs |
---|---|---|---|---|---|---|---|---|---|---|---|
FI_MR_BASIC |
✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ❌ | ✓ | ✓ |
FI_MR_SCALABLE |
✓ | ❌ | ❌ | ❌ | ✓ | ✓ | C | ✓ | ✓ | ❌ | ❌ |
Additional Features | bgq | gni | mlx | nd | psm | psm2 | rxm | sockets | udp | usnic | verbs |
---|---|---|---|---|---|---|---|---|---|---|---|
FABRIC_DIRECT | ✓ | ✓ | ❌ | ❌ | ❌ | ❌ | ❌ | ✓ | ❌ | ❌ | ❌ |
FI_RM_ENABLED | ❌ | ✓ | ❌ | ✓ | ✓ | ✓ | ✓ | ✓ | ❌ | * | |
Scalable endpoints | ✓ | ✓ | ❌ | ❌ | ❌ | ✓ | ❌ | ✓ | ❌ | ❌ | ❌ |
Counters | ✓ | ✓ | ❌ | ✓ | ✓ | ✓ | ❌ | ✓ | ❌ | ❌ | * |
Note: The mxm provider was deprecated and removed from libfabric. It has been replaced with the mlx provider.