# NVIDIA/nccl

Optimized primitives for collective multi-GPU communication

Repository: https://github.com/NVIDIA/nccl
Canonical: https://ross.abutalabs.com/products/nccl
Homepage: https://docs.nvidia.com/deeplearning/nccl/user-guide/docs/index.html
Language: C++
License: NOASSERTION
License Family: other
Topics: communications, cpp, cuda, deep-learning, gpu, nvidia
Last push: 2026-08-26T20:58:36+00:00

## Health v2 (maintenance only)
Score: 98/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 97, longevity 100
- inputs: {"age_days": 3946, "days_push": 7, "days_rel": 22, "gap_med": 23, "n_releases_24m": 14}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 5027, forks 1400 (observed 2026-08-28T04:09:04.923791+00:00)

## What it is
NVIDIA's Collective Communication Library (NCCL) is a C++ library providing topology-aware, high-bandwidth inter-GPU communication primitives such as AllReduce, AllGather, Broadcast, and point-to-point send/receive. It is optimized for PCIe, NVLink, NVSwitch, InfiniBand, and TCP/IP fabrics and integrates into single- or multi-process (e.g., MPI) applications.

## Use cases
- synchronize gradients across multiple GPUs for deep learning training
- run allreduce collectives across nodes with InfiniBand
- scale model training to multi-GPU and multi-node clusters
- implement custom send/receive communication patterns between GPUs
- accelerate distributed training frameworks like PyTorch or TensorFlow

## When to choose
- you need maximum-bandwidth GPU-to-GPU collectives on NVIDIA hardware
- you are building or tuning a distributed training framework
- you need collectives over NVLink, NVSwitch, or InfiniBand fabrics
- you want an MPI-like collective API with CUDA stream semantics

## When to avoid
- you need secure or encrypted network communication between GPUs
- you need a full parallel programming framework with process launching
- your workload runs on non-NVIDIA GPUs
- you only need CPU-to-CPU message passing, where MPI alone suffices

## Facets
- artifact type: library
- maturity: stable
- function: concurrency, networking, gpu-computing
- domain: deep-learning, microservices, gpu-computing
- platform: cpp
- tags: collective-communication, mpi-alternative, nvidia, multi-gpu, nvlink, infiniband, allreduce, hpc, high-performance-computing, linux, cuda, gpu

## Member repositories
- NVIDIA/nccl (main) score 98

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:04.923791+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:17:28.426798+00:00, confidence not recorded.
  - readme: https://github.com/NVIDIA/nccl (fetched 2026-08-28T04:09:04.923791+00:00, sha d81efb277cb5)
  - homepage: https://docs.nvidia.com/deeplearning/nccl/user-guide/docs/index.html (fetched 2026-08-29T08:58:11.897421+00:00, sha f82a95f2c666)
  - site_page: https://docs.nvidia.com/deeplearning/nccl/user-guide/docs/overview.html (fetched 2026-08-29T08:58:11.900073+00:00, sha f0ce5480b04f)
  - site_page: https://docs.nvidia.com/deeplearning/nccl/user-guide/docs/setup.html (fetched 2026-08-29T08:58:11.901700+00:00, sha 7c45147451fd)
  - site_page: https://docs.nvidia.com/deeplearning/nccl/user-guide/docs/usage.html (fetched 2026-08-29T08:58:11.903167+00:00, sha d37310b109af)
  - site_page: https://docs.nvidia.com/deeplearning/nccl/user-guide/docs/usage/communicators.html (fetched 2026-08-29T08:58:11.904658+00:00, sha f8f7f56cbb17)
  - site_page: https://docs.nvidia.com/deeplearning/nccl/user-guide/docs/usage/collectives.html (fetched 2026-08-29T08:58:11.906844+00:00, sha 99b3e644faf1)
  - site_page: https://docs.nvidia.com/deeplearning/nccl/user-guide/docs/usage/data.html (fetched 2026-08-29T08:58:11.908409+00:00, sha 463fcd7113cf)
  - site_page: https://docs.nvidia.com/deeplearning/nccl/user-guide/docs/usage/streams.html (fetched 2026-08-29T08:58:11.909860+00:00, sha 733843e94653)
  - site_page: https://docs.nvidia.com/deeplearning/nccl/user-guide/docs/usage/groups.html (fetched 2026-08-29T08:58:11.911401+00:00, sha fdaed1b38f94)
- Data as of 2026-08-30T08:39:29.467469+00:00.
