Skip to content

Provider Feature Matrix Main

Seth Zegelstein edited this page Feb 9, 2026 · 14 revisions

The tables below indicate which features are supported by which in-tree libfabric providers.

Note: The efa provider has two fabric types, efa and efa-direct. For detailed comparison between efa vs efa-direct, please refer to the EFA Provider Documentation.


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

H = required mode bit for HMEM support

(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 psm2 rxd rxm shm tcp udp verbs efa efa-direct ucx psm3 opx cxi lnx
FI_EP_DGRAM ✓ ❌ ❌ ❌ ❌ ✓ * ✓ ❌ ❌ ✓ * ❌ ❌
FI_EP_MSG ❌ ❌ ❌ ❌ ✓ ❌ ✓ ❌ ❌ ❌ ❌ ❌ ❌ ❌
FI_EP_RDM ✓ ✓ ✓ ✓ ✓ U U ✓ ✓ ✓ ✓ ✓ ✓ ✓
Primary Caps psm2 rxd rxm shm tcp udp verbs efa efa-direct ucx psm3 opx cxi lnx
FI_ATOMIC ✓ ✓ ✓ ✓ ❌ ❌ * ✓ ❌ ❌ ✓ ✓ ✓ ❌
FI_COLLECTIVE ✓ ❌ ❌ ✓ ❌
FI_DIRECTED_RECV ✓ ✓ ✓ ✓ ✓ ❌ ❌ ✓ ❌ ❌ ✓ ✓ ✓ C
FI_HMEM ❌ ❌ ✓ ✓ ❌ ❌ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
FI_MSG ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ❌
FI_MULTICAST ❌ ❌ ❌ ❌ ❌ * ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌
FI_NAMED_RX_CTX ✓ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ✓ ❌ ✓ ❌
FI_RMA ✓ ✓ ✓ ✓ ✓ ❌ * ✓ ✓ ✓ ✓ ✓ ✓ ❌
FI_TAGGED ✓ ✓ ✓ ✓ ✓ ❌ * ✓ ❌ ✓ ✓ ✓ ✓ ✓
FI_PEER ❌ ❌ ✓ ✓ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ✓ ❌
Primary Mods psm2 rxd rxm shm tcp udp verbs efa efa-direct ucx psm3 opx cxi lnx
FI_READ ✓ ✓ ✓ ✓ ✓ ❌ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ❌
FI_RECV ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
FI_REMOTE_READ ✓ ✓ ✓ ✓ ✓ ❌ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ❌
FI_REMOTE_WRITE ✓ ✓ ✓ ✓ ✓ ❌ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ❌
FI_SEND ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
FI_WRITE ✓ ✓ ✓ ✓ ✓ ❌ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ❌
Secondary Caps psm2 rxd rxm shm tcp udp verbs efa efa-direct ucx psm3 opx cxi lnx
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 ✓ ✓ ✓ ✓ ✓ ✓ ❌ ✓ ✓ ❌ ✓ ✓ ✓ C
FI_SOURCE_ERR ✓ ? ❌ ❌ ? ? ❌ ❌ ❌ ✓ ? ✓ C
FI_TRIGGER ✓ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ✓ ? ✓ ❌
Modes psm2 rxd rxm shm tcp udp verbs efa efa-direct ucx psm3 opx cxi lnx
FI_ASYNC_IOV R
FI_BUFFERED_RECV
FI_CONTEXT R O R
FI_CONTEXT2 R
FI_LOCAL_MR (compat) O R
FI_MSG_PREFIX
FI_RX_CQ_DATA R O
MR Modes psm2 rxd rxm shm tcp udp verbs efa efa-direct ucx psm3 opx cxi lnx
FI_MR_ALLOCATED C R R R R O
FI_MR_ENDPOINT R
FI_MR_HMEM H R R H
FI_MR_LOCAL C R R
FI_MR_PROV_KEY C R R R R O
FI_MR_MMU_NOTIFY
FI_MR_RAW R
FI_MR_RMA_EVENT
FI_MR_VIRT_ADDR C O R R R R
FI_MR_BASIC (compat) ✓ ✓ ❌ O ❌ ✓ ✓ ✓ ✓ ✓
FI_MR_SCALABLE (compat) ✓ C ✓ O ✓ ❌ ❌ ❌ ❌ ✓ ✓
Additional Features psm2 rxd rxm shm tcp udp verbs efa efa-direct ucx psm3 opx cxi lnx
FABRIC_DIRECT ✓ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ✓ ✓ ❌ ❌
FI_RM_ENABLED ✓ ✓ ✓ ✓ ✓ * * * ❌ ✓ ✓ ✓ ✓
Scalable endpoints ✓ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ✓ ❌ ❌ ❌
Counters (local operations) ✓ ✓ ✓ ✓ ✓ ❌ * ✓ ✓ ✓ ✓ ✓ ✓ ❌
Counters (remote operations) ✓ ✓ ✓ ✓ ❌ ✓ ✓ ❌ ✓ ✓ ✓ ❌

Clone this wiki locally