nixl-cu12
NIXL Python API
What it is and what it does
NIXL is a Python library that wraps NVIDIA's Inference Xfer Library, a C++ communication acceleration layer designed for AI inference. It provides an abstraction over memory types (CPU, GPU) and storage backends (file, block, object store) through pluggable transport modules, with the goal of reducing data movement overhead in distributed inference scenarios.
The library is intended for integration into inference frameworks like NVIDIA Dynamo rather than direct application use. It ships with pre-built wheels that automatically detect and use the correct CUDA backend (12 or 13) at runtime. Installation is straightforward on Linux via pip, but the package is tightly coupled to PyTorch and CUDA, making it suitable only for GPU-accelerated inference workloads on supported platforms.
Use it for:
- Accelerating tensor transfers between GPU and CPU memory in multi-GPU inference deployments.
- Reducing latency in distributed inference by optimizing point-to-point communication patterns.
- Abstracting storage I/O (file, object store, block device) for inference data staging and caching.
- Integrating into inference frameworks that need vendor-neutral transport abstraction over UCX and other backends.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
NIXL provides Python bindings to accelerate point-to-point communications in AI inference frameworks, abstracting over CPU/GPU memory and various storage backends through a modular plugin architecture.
Yes, if you are building or integrating an AI inference framework on Linux with GPU support and need optimized data movement abstractions. No, if you are running inference directly in PyTorch without framework-level integration—the library is designed for framework authors, not end-user applications. Requires Linux, Python 3.10+, torch, and numpy; no known vulnerabilities as of the latest release.
Install
nixl-cu12 on PyPI
pip
pip install nixl-cu12uv
uv add nixl-cu12poetry
poetry add nixl-cu12Installing nixl-cu12
Before you install
Medium install friction: requires Python 3.10+, torch, and numpy as runtime dependencies. Wheels are pre-built for recent Python versions (3.10–3.14) on x86_64 and aarch64 Linux only. Active maintenance as of the latest release.
License in practice
Dual-licensed under MIT and Apache-2.0 (permissive). Both are business-friendly open-source licenses with minimal restrictions on use or modification.
Quickstart
pip install nixl-cu12
import nixl
# NIXL automatically selects the correct CUDA backend at runtime based on PyTorch's CUDA version
Linux only (Ubuntu 22.04/24.04 or Fedora tested); macOS and Windows not supported. Requires CUDA 12 runtime and PyTorch with matching CUDA version.
Verify before relying
- Specific performance gains or latency improvements over direct tensor transfers in real inference workloads.
- Compatibility matrix with specific PyTorch versions and inference frameworks beyond the general CUDA 12 support.
- Whether the plugin architecture is accessible to end users or primarily for framework integrators.
Package facts
| License | MIT AND Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 2 — torch, numpy |
| Maintenance | actively maintained — 0 days since the last release |
| First released | |
| Downloads | 419,112/month — #6,802 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: nixl_cu12-1.4.0-cp310-cp310-manylinux_2_28_aarch64.whl; nixl_cu12-1.4.0-cp310-cp310-manylinux_2_28_x86_64.whl; nixl_cu12-1.4.0-cp311-cp311-manylinux_2_28_aarch64.whl; nixl_cu12-1.4.0-cp311-cp311-manylinux_2_28_x86_64.whl; nixl_cu12-1.4.0-cp312-cp312-manylinux_2_28_aarch64.whl; nixl_cu12-1.4.0-cp312-cp312-manylinux_2_28_x86_64.whl; nixl_cu12-1.4.0-cp313-cp313-manylinux_2_28_aarch64.whl; nixl_cu12-1.4.0-cp313-cp313-manylinux_2_28_x86_64.whl; nixl_cu12-1.4.0-cp314-cp314-manylinux_2_28_aarch64.whl; nixl_cu12-1.4.0-cp314-cp314-manylinux_2_28_x86_64.whl
Tags
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to…
permissive · top 100 on PyPI
huggingface-hubClient library and CLI tool for downloading,…
permissive · top 100 on PyPI
langchainLangChain provides a framework for building…
permissive · top 1,000 on PyPI
hf-xethf-xet provides chunk-based deduplication and…
permissive · top 1,000 on PyPI
tokenizersTokenizers converts raw text into token…
permissive · top 1,000 on PyPI
transformersTransformers provides a unified framework for…
permissive · top 1,000 on PyPI
nixl-cu13NIXL provides Python bindings to accelerate…
permissive · top 15,000 on PyPI
nixlnixl is a meta package that automatically…
permissive · top 15,000 on PyPI
libucxx-cu12Provides Python bindings for UCX (Unified…
permissive · top 15,000 on PyPI
ucxx-cu12ucxx-cu12 provides Python bindings for the…
permissive · top 15,000 on PyPI
sgl-kernelsgl-kernel provides optimized CUDA compute…
permissive · top 15,000 on PyPI
sglang-kernelsglang-kernel provides optimized CUDA compute…
permissive · top 15,000 on PyPI
nccl4pynccl4py provides Python bindings to NVIDIA's…
permissive · top 15,000 on PyPI
tensorrt-cu12-libsProvides NVIDIA TensorRT libraries for CUDA 12…
unclear · top 15,000 on PyPI
tensorrt-cu12-bindingsProvides Python bindings for NVIDIA TensorRT…
unclear · top 15,000 on PyPI
spinspin is a command-line tool that abstracts…
permissive · top 15,000 on PyPI