Rdma Infiniband

RDMA (Remote Direct Memory Access) and InfiniBand are the high-performance networking technologies that enable direct memory-to-memory data transfer between machines without involving the CPU or operating system — achieving latencies under 1 microsecond and throughputs over 400 Gbps, making them essential for HPC clusters, distributed training, and low-latency storage systems.

How RDMA Works

  • Traditional networking: App → OS kernel → TCP/IP stack → NIC → wire → NIC → kernel → App.
  • Each step: System calls, context switches, memory copies — adds latency.
  • RDMA: App → NIC → wire → NIC → remote memory (bypasses both CPUs and kernels).
  • Zero-copy: Data goes directly from wire to application buffer — no intermediate copies.
  • Kernel bypass: NIC handles protocol processing in hardware — no OS involvement.
  • CPU offload: CPU freed for computation while NIC handles transfers.

RDMA Operations

OperationDescriptionCPU Involvement
RDMA WriteWrite to remote memoryNone on remote side
RDMA ReadRead from remote memoryNone on remote side
Send/ReceiveTwo-sided messagingBoth sides post buffers
Atomic (CAS, FetchAdd)Atomic operation on remote memoryNone on remote side

RDMA Transports

TransportFabricBandwidthLatencyDeployment
InfiniBand (IB)Dedicated IB fabricHDR: 200 Gbps, NDR: 400 Gbps< 0.6 μsHPC, AI clusters
RoCE v2Standard Ethernet25-400 Gbps1-3 μsData centers
iWARPStandard Ethernet (TCP)10-100 Gbps5-10 μsEnterprise storage

InfiniBand Generations

GenerationPer-Lane Rate4x PortYear
QDR10 Gbps40 Gbps2008
FDR14 Gbps56 Gbps2012
EDR25 Gbps100 Gbps2015
HDR50 Gbps200 Gbps2019
NDR100 Gbps400 Gbps2022
XDR200 Gbps800 Gbps2024

RDMA in Distributed ML Training

  • NCCL over InfiniBand: Default for multi-node GPU training.
  • GPUDirect RDMA: NIC reads directly from GPU memory — no CPU staging buffer.
  • 8× H100 DGX pods connected via 8× NDR400 (3.2 Tbps per node).
  • Gradient AllReduce: Ring/tree AllReduce over RDMA achieves near-wire-speed.
  • Without RDMA: Multi-node training bandwidth drops 5-10x → scaling becomes impractical beyond 2-4 nodes.

Programming RDMA

  • libibverbs: Low-level C API for RDMA operations (complex — ~200 LOC for simple send).
  • UCX (Unified Communication X): Higher-level library abstracting RDMA transports.
  • NCCL / Gloo: ML-specific collective communication over RDMA.

RDMA and InfiniBand are the networking foundation of modern AI supercomputers — the ability to move data between machines at hardware speed without CPU involvement is what makes it possible to train trillion-parameter models across thousands of GPUs with near-linear scaling efficiency.

Take rdma infiniband further

Ask the copilot about this term, or have our engineers assess it against your process.