nvidia-nvshmem-cu12
NVSHMEM creates a global address space that provides efficient and scalable communication for NVIDIA GPU clusters.
What it is and what it does
NVSHMEM is NVIDIA's implementation of the OpenSHMEM parallel programming standard, adapted for GPU clusters. It creates a unified memory address space spanning multiple GPUs, allowing kernels and CPU code to read and write remote GPU memory with fine-grained control. The package is built on top of CUDA 12 and is intended for researchers and engineers building distributed machine learning and scientific computing workloads that need efficient inter-GPU communication.
The package is in Beta status and actively maintained. It targets modern Python versions (3.5 through 3.11) and runs on Linux (both aarch64 and x86_64 architectures). Installation requires the nvidia-cuda-cccl-cu12 runtime dependency, and the platform-specific wheels mean you must match your system architecture exactly.
Use it for:
- Implement collective operations (allreduce, broadcast) across GPUs in a cluster without explicit message passing.
- Build distributed training loops where multiple GPUs access shared parameter buffers via global memory semantics.
- Develop scientific simulations that require fine-grained synchronization and data movement between GPU memories.
- Optimize communication in multi-GPU inference pipelines by leveraging GPU-initiated remote memory access.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
NVSHMEM provides a global address space for GPU cluster communication, enabling fine-grained GPU and CPU-initiated operations across multiple GPU memories using OpenSHMEM-based primitives.
Yes, if you are building multi-GPU CUDA applications on Linux and need efficient inter-GPU communication. The package is actively maintained, has no known vulnerabilities, and targets a real use case in distributed GPU computing. However, verify the unclear license terms and confirm Windows support is not actually available despite classifier claims. Medium install friction is acceptable for a specialized GPU library.
Install
nvidia-nvshmem-cu12 on PyPI
pip
pip install nvidia-nvshmem-cu12uv
uv add nvidia-nvshmem-cu12poetry
poetry add nvidia-nvshmem-cu12Installing nvidia-nvshmem-cu12
Before you install
Medium install friction due to platform-specific wheels (aarch64 and x86_64 Linux only). Active maintenance with a recent release, though no public repository or commit history is available to verify ongoing development velocity.
License in practice
License terms are unclear—no SPDX identifier or raw license text is published. Verify licensing compatibility with your project before production use.
Quickstart
pip install nvidia-nvshmem-cu12
import nvshmem
# Initialize NVSHMEM for multi-GPU communication
nvshmem.init()
Requires NVIDIA CUDA 12.x runtime, NVIDIA GPUs, and Linux (aarch64 or x86_64); not available on Windows or macOS despite classifier claims.
Verify before relying
- Actual Windows support status—classifiers list Windows but wheels are Linux-only.
- Whether public documentation exists beyond the NVIDIA CUDA Zone homepage.
- Specific CUDA 12 minor version requirements and GPU compute capability minimums.
- Whether the package works standalone or requires additional NVIDIA libraries beyond nvidia-cuda-cccl-cu12.
Package facts
| License | not declared (unclear) |
| Python support | supports the current Python release (>=3) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 1 — nvidia-cuda-cccl-cu12 |
| Maintenance | actively maintained — 28 days since the last release |
| First released | |
| Downloads | 7,604,088/month — #1,715 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: nvidia_nvshmem_cu12-3.7.2-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; nvidia_nvshmem_cu12-3.7.2-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Keywords: cuda, nvidia, runtime, machine learning, deep learning
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
nvidia-nvshmem-cu13NVSHMEM provides a global address space for GPU…
unclear · top 1,000 on PyPI
nvshmem4py-cu13Provides a Python interface to NVSHMEM,…
unclear · top 15,000 on PyPI
nvidia-nccl-cu13Provides NVIDIA's Collective Communication…
unclear · top 1,000 on PyPI
nvidia-nccl-cu12Provides NVIDIA's NCCL runtime library for GPU…
unclear · top 1,000 on PyPI
nvidia-cuda-cccl-cu12Provides NVIDIA's CUDA C++ Core Compute…
unclear · top 15,000 on PyPI
nccl4pynccl4py provides Python bindings to NVIDIA's…
permissive · top 15,000 on PyPI
nvidia-nccl-cu11Provides NVIDIA's collective communication…
unclear · top 5,000 on PyPI
nvidia-cusparse-cu12Provides NVIDIA CUSPARSE native runtime…
unclear · top 1,000 on PyPI
nvgpuQueries and monitors NVIDIA GPUs on a machine,…
permissive · top 15,000 on PyPI
umfUMF is a library for constructing and managing…
permissive · top 15,000 on PyPI