ReleaseNVIDIANVIDIApublished Oct 18, 2025seen Jun 26

NVIDIA/nccl v2.28.7-1

NVIDIA/nccl

Open original ↗

Captured source

source ↗
published Oct 18, 2025seen Jun 26captured Aug 31http 200method plain

NCCL v2.28.7-1 Release

Repository: NVIDIA/nccl

Tag: v2.28.7-1

Published: 2025-10-18T01:15:37Z

Prerelease: no

Release notes:

GPU-Initiated Networking (GIN)

  • Provides device-side API for integrating GPU-Initiated Networking

capability into application kernels.

  • New transport layer called DOCA GPUNetIO.
  • New ncclGin construct to create, destroy and manipulate GIN contexts.
  • New ncclGinBarrierSession to provide synchronization functionality.
  • New put, signal, counter operations for data movement and signaling.
  • GIN API signatures and functionalities are subject to change.
  • GIN Support Requirements
  • CUDA 12.2 or later when compiling the GPU code
  • NVIDIA GPUs: Volta or newer. NVIDIA GPU drivers >= 510.40.3
  • NVIDIA NICs: CX4 or newer. rdma-core >= 44.0
  • Requires nvidia-peermem or DMABUF support. When using DMABUF, linux

kernel >= 6.1 is required.

New ncclCommRevoke API for fault tolerance

  • Introduces ncclCommRevoke to quiesce ongoing NCCL work on a

communicator without freeing resources.

  • This answers the need for a lightweight way to cancel in-flight

collectives and bring a communicator to a safe state before split/shrink/finalize/destroy.

  • Includes optional cross-rank coordination (global barrier) and

supports blocking/non-blocking usage.

New NCCL Environment Plugin

  • The env plugin allows users to set NCCL environment variables, for

example, after loading them from a centralized database.

  • The NCCL_ENV_PLUGIN variable can be used to let NCCL load an external

environment plugin.

New NCCL Examples on GitHub

  • The NCCL examples directory provides users and developers with

practical code samples that highlight NCCL’s core features.

  • It covers basic operations like communicator initialization,

point-to-point communication, and collective operations, as well as advanced features such as user buffer registration, symmetric memory, and the device API.

Device API improvements

  • Adds ncclFindWindow API.
  • Adds new ncclBarrierSession to provide hybrid synchronization

functionality.

  • Makes multimem available with as few as two ranks.
  • Removes distance (NCCL_P2P_LEVEL) considerations from determining the

availability of symmetric memory.

Enhanced NCCL RAS output

  • Extends RAS subsystem with JSON format to support machine-parsable

metrics collection.

  • Enables structured data export for monitoring tools, dashboards, and

automated analysis systems.

Github Pull Requests resolved

  • Fast Init - CPU Optimizations for NCCL Initialization Large Scale.

(PR https://github.com/NVIDIA/nccl/pull/1789)

  • Fast Init - Improve Bootstrap AllGather by 2x at large scale by

sending bootstrap information bidirectionally. (PR https://github.com/NVIDIA/nccl/pull/1791)

  • Fixes spurious failures when PyTorch is statically linked with

NCCL-2.28.3 because error is not drained, but rather gets propagated into the next CUDA kernel invocation. (PR https://github.com/NVIDIA/nccl/pull/1864)

Other notable improvements

  • Fixes multicast object leaks in case of failed NVLS user buffer

registrations, which could lead to crashes. Avoids such registration attempts in case of the use of incompatible memory allocators.

  • Fixes potential data corruption with built-in symmetric kernels for

small messages with size granularity under 8 bytes or when multiple symmetric operations were aggregated in a group.

  • Generalizes the existing point-to-point scheduling to the case of

un-even GPU count per node.

  • Fixes a crash when network plugin assignment fails.
  • Fixes a large performance issue with NCCL_CROSS_NIC=0 and certain

split mask settings, where NCCL cannot find a viable ring.

  • Fixes crash when NCCL is compiled with recent CUDA versions but

running on hosts with certain specific older CUDA drivers.