Skip to content

Provider Feature Matrix v1.7.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.


Key

✓ = well supported

* = limited support (e.g., not supported for all endpoint types or not optimal for performance)

❌ = not supported

U = supported through utility provider(s)

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 rxd rxm shm sockets tcp udp usnic verbs
FI_EP_DGRAM *
FI_EP_MSG *
FI_EP_RDM * U U U * U
Primary Capabilities bgq gni mlx nd psm psm2 rxd rxm shm sockets tcp udp usnic verbs
FI_ATOMIC *
FI_DIRECTED_RECV
FI_MSG
FI_MULTICAST ? *
FI_NAMED_RX_CTX
FI_READ
FI_RECV *
FI_REMOTE_READ
FI_REMOTE_WRITE
FI_RMA *
FI_SEND *
FI_TAGGED *
FI_WRITE
FI_VARIABLE_MSG
Secondary Capabilities bgq gni mlx nd psm psm2 rxd rxm shm sockets tcp udp usnic verbs
FI_FENCE
FI_LOCAL_COMM ? C C
FI_MULTI_RECV *
FI_REMOTE_COMM ? C
FI_RMA_EVENT
FI_RMA_PMEM
FI_SHARED_AV
FI_SOURCE
FI_SOURCE_ERR ? ? ? ?
FI_TRIGGER :x
Modes bgq gni mlx nd psm psm2 rxd rxm shm sockets tcp udp usnic verbs
FI_ASYNC_IOV R
FI_BUFFERED_RECV
FI_CONTEXT R R R R R O
FI_CONTEXT2
FI_LOCAL_MR (compat) R O R R
FI_MSG_PREFIX R
FI_NOTIFY_FLAGS_ONLY
FI_RESTRICTED_COMP
FI_RX_CQ_DATA O R
Memory Registration Modes bgq gni mlx nd psm psm2 rxd rxm shm sockets tcp udp usnic verbs
FI_MR_ALLOCATED R C R
FI_MR_ENDPOINT
FI_MR_LOCAL R C R
FI_MR_PROV_KEY R C R
FI_MR_MMU_NOTIFY
FI_MR_RAW
FI_MR_RMA_EVENT
FI_MR_VIRT_ADDR R C R
FI_MR_BASIC (compat) O
FI_MR_SCALABLE (compat) C O
Additional Features bgq gni mlx nd psm psm2 rxd rxm shm sockets tcp udp usnic verbs
FABRIC_DIRECT
FI_RM_ENABLED *
Scalable endpoints
Counters (local operations) *
Counters (remote operations)

Note: The mxm provider was deprecated and removed from libfabric. It has been replaced with the mlx provider.