The NVIDIA Collective Communications Library (NCCL) implements multi-GPU and multi-node collective communication primitives that are performance optimized for NVIDIA GPUs. NCCL provides routines such as all-gather, all-reduce, broadcast, reduce, reduce-scatter, that are optimized to achieve high bandwidth over PCIe and NVLink high-speed interconnect.
(Click to Zoom)
Developers of deep learning frameworks and HPC applications can rely on NCCL’s highly optimized, MPI compatible and topology aware routines, to take full advantage of all available GPUs within and across multiple nodes. This allows them to focus on developing new algorithms and software capabilities, rather than performance tuning low-level communication collectives.
Leading deep learning frameworks such as Caffe2, Microsoft Cognitive Toolkit, MXNet, PyTorch and TensorFlow use NCCL to deliver near-linear scaling of deep learning training on multi-GPU systems.
Deep learning frameworks using NCCL 2.1 deliver high-performance and efficient multi-node, multi-GPU scaling of deep learning training. NCCL 2.1 is optimized for Volta and is now available as a free download to the members of the NVIDIA Developer Program.
To download earlier versions of NCCL (1.x) versions please visit the NCCL’s GitHub page.