--- id: nccl4py version: "0.4.1" license: Apache-2.0 license_treatment: permissive maintenance: active --- # nccl4py — NCCL4Py: Python bindings for NCCL License: permissive · Maintenance: active · Downloads: 323.5K/mo ## What it is and what it does nccl4py is a Python wrapper around NVIDIA's Collective Communications Library (NCCL), designed to bring GPU-accelerated communication to Python applications running on multi-GPU and multi-node clusters. It abstracts NCCL's C API into a Pythonic interface, allowing distributed computing frameworks and custom applications to coordinate GPU computations across multiple nodes without dropping to C code. The package targets researchers and engineers building distributed machine learning systems, high-performance computing applications, and other workloads that need efficient all-reduce, broadcast, and other collective operations across GPUs. It depends on numpy for array handling, packaging for version management, and CUDA runtime libraries (cuda-core and cuda-pathfinder) to interface with GPU hardware. Installation requires CUDA 12.x or 13.x and is limited to Linux on x86_64 or aarch64 architectures. Use it for: - Coordinate gradient synchronization across multiple GPUs during distributed deep learning training. - Implement custom all-reduce and broadcast operations in multi-node HPC applications. - Build distributed data-parallel inference pipelines that need efficient GPU-to-GPU communication. - Integrate NCCL communication into Python-based simulation or numerical computing frameworks. - Prototype distributed algorithms that require low-latency collective operations on GPU clusters. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. nccl4py provides Python bindings to NVIDIA's Collective Communications Library (NCCL), enabling GPU-accelerated multi-GPU and multi-node communication for distributed computing workloads on Linux clusters. Yes, if you are building distributed GPU applications on Linux clusters and need low-latency collective communication. The active maintenance, permissive Apache-2.0 license, and strong repository signals indicate a well-supported project. Medium install friction (CUDA runtime dependency, platform-specific wheels) is typical and expected for GPU libraries. No known security vulnerabilities. Not suitable for Windows or macOS, or for single-GPU workloads. ## Install pip install nccl4py uv add nccl4py poetry add nccl4py ## Installing nccl4py Before you install: Medium install friction due to CUDA runtime dependencies (cuda-core, cuda-pathfinder) and platform-specific wheels (x86_64 and aarch64 Linux only). Active maintenance with a recent release (3 days old) and strong repository signals (4996 stars, last commit 2026-08-14). License in practice: Apache-2.0 permissive license allows commercial and private use with minimal restrictions, making it suitable for production deployments in research and industry settings. Quickstart: pip install nccl4py[cu12] import nccl4py import numpy as np # Initialize NCCL communicator for multi-GPU operations comm = nccl4py.NcclComm() data = np.array([1.0, 2.0, 3.0]) comm.AllReduce(data) Requires NVIDIA CUDA 12.x or 13.x installed and NVIDIA GPU hardware; Linux (x86_64 or aarch64) only; Python 3.10 or later. Verify before relying: - Whether nccl4py requires explicit NCCL library installation or bundles it with the wheel. - Performance characteristics compared to direct NCCL C API or other Python distributed frameworks. - Supported collective operations beyond AllReduce and their API signatures. ## Package facts - License: Apache-2.0 (permissive) - Python support: supports_current - Install friction: medium - Maintenance: active - Downloads: 323.5K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags gpu collective communication, nccl python bindings, multi-gpu distributed computing, nvidia nccl wrapper, gpu cluster communication, distributed training communication, cuda collective operations, gpu-computing, distributed-systems, nvidia-cuda [View on SkillFed](https://skillfed.io/packages/nccl4py) · [View on PyPI](https://pypi.org/project/nccl4py/)