Provider Feature Matrix Main - ofiwg/libfabric GitHub Wiki

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)

:x: = 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 :x: :x: :x: :x: * :x: :x: * :x: :x:
FI_EP_MSG :x: :x: :x: :x: :x: :x: :x: :x: :x: :x: :x: :x:
FI_EP_RDM U U
Primary Caps psm2 rxd rxm shm tcp udp verbs efa efa-direct ucx psm3 opx cxi lnx
FI_ATOMIC :x: :x: * :x: :x: :x:
FI_COLLECTIVE :x: :x: :x:
FI_DIRECTED_RECV :x: :x: :x: :x: C
FI_HMEM :x: :x: :x: :x:
FI_MSG :x:
FI_MULTICAST :x: :x: :x: :x: :x: * :x: :x: :x: :x: :x: :x: :x: :x:
FI_NAMED_RX_CTX :x: :x: :x: :x: :x: :x: :x: :x: :x: :x: :x:
FI_RMA :x: * :x:
FI_TAGGED :x: * :x:
FI_PEER :x: :x: :x: :x: :x: :x: :x: :x: :x: :x: :x:
Primary Mods psm2 rxd rxm shm tcp udp verbs efa efa-direct ucx psm3 opx cxi lnx
FI_READ :x: :x:
FI_RECV
FI_REMOTE_READ :x: :x:
FI_REMOTE_WRITE :x: :x:
FI_SEND
FI_WRITE :x: :x:
Secondary Caps psm2 rxd rxm shm tcp udp verbs efa efa-direct ucx psm3 opx cxi lnx
FI_FENCE :x: :x: :x: :x: :x: :x: :x: :x: :x: :x: :x: :x: :x:
FI_LOCAL_COMM C C
FI_MULTI_RECV :x: * :x: * :x:
FI_REMOTE_COMM C :x:
FI_RMA_EVENT :x: :x: :x: :x: :x: ? :x:
FI_RMA_PMEM :x: :x: :x: :x: :x: :x: :x: :x: :x: :x: :x: :x: :x:
FI_SHARED_AV :x: :x: :x: :x: :x: :x: :x: ? :x: :x:
FI_SOURCE :x: :x: C
FI_SOURCE_ERR ? :x: :x: ? ? :x: :x: :x: ? C
FI_TRIGGER :x: :x: :x: :x: :x: :x: :x: :x: ? :x:
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) :x: O :x:
FI_MR_SCALABLE (compat) C O :x: :x: :x: :x:
Additional Features psm2 rxd rxm shm tcp udp verbs efa efa-direct ucx psm3 opx cxi lnx
FABRIC_DIRECT :x: :x: :x: :x: :x: :x: :x: :x: :x: :x:
FI_RM_ENABLED * * * :x:
Scalable endpoints :x: :x: :x: :x: :x: :x: :x: :x: :x: :x: :x:
Counters (local operations) :x: * :x:
Counters (remote operations) :x: :x: :x: