GPU-Initiated Networking for NCCL
By: Khaled Hamidouche , John Bachan , Pak Markthub and more
Potential Business Impact:
Lets AI talk to itself faster.
Modern AI workloads, especially Mixture-of-Experts (MoE) architectures, increasingly demand low-latency, fine-grained GPU-to-GPU communication with device-side control. Traditional GPU communication follows a host-initiated model, where the CPU orchestrates all communication operations - a characteristic of the CUDA runtime. Although robust for collective operations, applications requiring tight integration of computation and communication can benefit from device-initiated communication that eliminates CPU coordination overhead. NCCL 2.28 introduces the Device API with three operation modes: Load/Store Accessible (LSA) for NVLink/PCIe, Multimem for NVLink SHARP, and GPU-Initiated Networking (GIN) for network RDMA. This paper presents the GIN architecture, design, semantics, and highlights its impact on MoE communication. GIN builds on a three-layer architecture: i) NCCL Core host-side APIs for device communicator setup and collective memory window registration; ii) Device-side APIs for remote memory operations callable from CUDA kernels; and iii) A network plugin architecture with dual semantics (GPUDirect Async Kernel-Initiated and Proxy) for broad hardware support. The GPUDirect Async Kernel-Initiated backend leverages DOCA GPUNetIO for direct GPU-to-NIC communication, while the Proxy backend provides equivalent functionality via lock-free GPU-to-CPU queues over standard RDMA networks. We demonstrate GIN's practicality through integration with DeepEP, an MoE communication library. Comprehensive benchmarking shows that GIN provides device-initiated communication within NCCL's unified runtime, combining low-latency operations with NCCL's collective algorithms and production infrastructure.
Similar Papers
GPU-Initiated Networking for NCCL
Distributed, Parallel, and Cluster Computing
Lets computers talk to each other faster for AI.
RDMA Point-to-Point Communication for LLM Systems
Distributed, Parallel, and Cluster Computing
Makes AI models train and run faster.
An Efficient, Reliable and Observable Collective Communication Library in Large-scale GPU Training Clusters
Distributed, Parallel, and Cluster Computing
Makes AI learn much faster and more reliably.