Skip to main content

NVSHMEM4Py

NVSHMEM4Py exposes NVSHMEM host, device, and on-stream interfaces to Python, with interoperability for CUDA Python, Numba, PyTorch, CuPy, and CuTe DSL.

Quick Start

Follow the NVSHMEM4Py installation guide to install the package matching the CUDA major version. This example requires two supported GPUs on one Linux node and mpi4py built for the active MPI installation.

From the repository root:

mpirun -np 2 python nvshmem4py/examples/hello.py

The output includes one line from each PE, in either order:

Hello from PE 0 of 2
Hello from PE 1 of 2

The example selects one GPU per local MPI rank and initializes NVSHMEM from MPI_COMM_WORLD. See the main NVSHMEM quick start for platform requirements and the launching guide for other launchers.

Building Wheels

Wheel targets are part of the NVSHMEM CMake build. See the NVSHMEM4Py CMake configuration for supported options and defaults. For example, to build a Python 3.12 wheel for CUDA 12:

cmake -S . -B build \
  -DNVSHMEM4PY_BUILD_ALL_WHEELS=OFF \
  -DNVSHMEM4PY_PYTHON_VERSIONS=3.12 \
  -DNVSHMEM4PY_CUDA_VERSIONS=12
cmake --build build --target build_nvshmem4py_wheel_cu12_3.12

The wheel is written to build/dist/ and can be installed as described in the NVSHMEM4Py installation guide.

Examples

The examples cover host, device, on-stream, and framework-interoperability workflows. See the main NVSHMEM README for additional documentation and project information.

Metadata

Release files for nvshmem4py-cu13 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for nvshmem4py-cu13 0.4.0
File
nvshmem4py_cu13-0.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.34+ x86-64 Details
nvshmem4py_cu13-0.4.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64, Linux glibc 2.34+ ARM64 Details
nvshmem4py_cu13-0.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.34+ x86-64, Linux glibc 2.17+ x86-64 Details
nvshmem4py_cu13-0.4.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64, Linux glibc 2.34+ ARM64 Details
nvshmem4py_cu13-0.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64, Linux glibc 2.34+ x86-64 Details
nvshmem4py_cu13-0.4.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ ARM64, Linux glibc 2.17+ ARM64 Details
nvshmem4py_cu13-0.4.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64, Linux glibc 2.34+ x86-64 Details
nvshmem4py_cu13-0.4.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64, Linux glibc 2.34+ ARM64 Details

Total release size: 39.0 MB

Release files / nvshmem4py_cu13-0.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl

Download URL nvshmem4py_cu13-0.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl
Size 5.0 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
401459b3a6d0dd2b5cc787a65385e4d76478fbdd8174e5d85d93ed97e76279c8
BLAKE2b-256 checksum
How to use checksums
feb10363a1d614c49c7ca52de80684e72598c441418a00833ab110b03348cfd0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / nvshmem4py_cu13-0.4.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl

Download URL nvshmem4py_cu13-0.4.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl
Size 5.0 MB
Tags CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
8261d47e49dc67bc023a0143d1566b0f909dd4a02e281d2b52b770ae99401e7e
BLAKE2b-256 checksum
How to use checksums
4c43b6c47b00b37c7c9169beba517c94c22727daf7a93e07c4a2a284eb7728e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / nvshmem4py_cu13-0.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl

Download URL nvshmem4py_cu13-0.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl
Size 5.0 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
3e6a4f6d50304c0dcc5a0334753b09290d3770f0566aee012ca329691c219946
BLAKE2b-256 checksum
How to use checksums
0347e949368e061d1f051b2001d2c9d577c0bea98405cad96ce12b88a62c75bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / nvshmem4py_cu13-0.4.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl

Download URL nvshmem4py_cu13-0.4.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl
Size 4.8 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
c34377488f3fa2de62f26a30677a6a378fdfda04461a64d2281975cde416601a
BLAKE2b-256 checksum
How to use checksums
cf845a5f41be72d4ac6e36aacd1be214d31db6be0507c00e2ecabf4e43d676ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / nvshmem4py_cu13-0.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl

Download URL nvshmem4py_cu13-0.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl
Size 4.7 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
71174ea8cc2332ab12f7ba6ae75ce0c21ea0677a69d565dfd5d680499f5ed6fe
BLAKE2b-256 checksum
How to use checksums
253d150846cb041bb571e0b32f833e7155e925f47cbfc49bb5c13e5f2db2ea15
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / nvshmem4py_cu13-0.4.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl

Download URL nvshmem4py_cu13-0.4.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl
Size 4.7 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
d826d6ea790dad1b0d19455748d678fca6344658bf8686eaa2a1729dac0cc449
BLAKE2b-256 checksum
How to use checksums
48b8eb82c3a910bc0f2bcc82e842abad2057422251fd01674367fa03be62bb53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / nvshmem4py_cu13-0.4.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl

Download URL nvshmem4py_cu13-0.4.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_34_x86_64.whl
Size 4.9 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
022b55db273e752cff42029b11349744c7af09930980da114248567635e32849
BLAKE2b-256 checksum
How to use checksums
5de5becb2329e698d22b49aaa91af51fd1b5cfb842ad4659e75e1f1fcf2000e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / nvshmem4py_cu13-0.4.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl

Download URL nvshmem4py_cu13-0.4.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_34_aarch64.whl
Size 4.9 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
f131155b7c637036bc838bdecb2702e9f3e0a6453d69ceed77d619ca7954deb4
BLAKE2b-256 checksum
How to use checksums
4e0adba33287e819596571492d8a744d12ab568332ef984c157bd544ddda4afd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

This release

0.4.0 This release

8 release files

0.3.1

8 release files

0.3.0

10 release files

0.2.2

10 release files

0.1.3

10 release files

0.1.2

10 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page