Expand description
ibverbs-specific device selection: pairs a MemoryLocation with the
RDMA NIC(s) that have the best PCIe path to it.
Enums§
- IbvDevice
Target - What an
IbvConfigtargets: a memory location (whose best NIC is auto-selected) or an explicit NIC by name.
Functions§
- get_
cuda_ device_ to_ ibv_ device - Process-wide CUDA ordinal → optimal NIC map, computed once per backend and cached. CPU-only workloads pay no initialization cost.
- get_
pci_ address - The PCI address of an RDMA NIC, resolved from its sysfs device link
(
/sys/class/infiniband/<name>/device). - resolve_
target - Resolves an
IbvDeviceTargetto a single NIC of backendI: the named device forIbvDeviceTarget::Nic, or the best NIC for a memory location. Both arms are scoped to backendI, so a name belonging to a different backend resolves toNone. - select_
optimal_ ibv_ devices - The NIC(s) of backend
Iwith the best path tolocation, ranked byPciPath::is_better_than(most local, then highest port-capped bandwidth) and returning all that tie for best.