librmm-cu12
rmm - RAPIDS Memory Manager
What it is and what it does
librmm-cu12 is the CUDA 12 variant of the RAPIDS Memory Manager, a library that provides a common interface for customizing GPU and host memory allocation. It addresses the performance requirements of GPU-centric workflows by allowing developers to use optimizations like pinned host memory for asynchronous transfers or device memory pools to reduce allocation overhead. The package wraps the C++ librmm library and exposes it to Python applications, making it suitable for projects built on the RAPIDS ecosystem that need fine-grained control over memory behavior on NVIDIA GPUs.
The library is designed for developers building GPU-accelerated data science and machine learning applications. It depends on rapids-logger for logging and requires a modern NVIDIA GPU (Volta or newer) and CUDA 12.2 or later. Installation uses platform-specific wheels, so setup is straightforward on supported Linux architectures, though the GPU and CUDA toolkit must already be present on the system.
Use it for:
- Optimize asynchronous host-to-device memory transfers in GPU-accelerated data pipelines using pinned host memory.
- Reduce dynamic GPU memory allocation overhead in iterative machine learning training by using device memory pools.
- Customize memory allocation strategies in RAPIDS-based applications for specific workload patterns.
- Integrate custom memory management into C++ GPU applications via the RMM interface while maintaining Python compatibility.
- Profile and control memory usage patterns in multi-GPU workflows to avoid fragmentation and improve throughput.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
librmm-cu12 provides GPU memory allocation and management for CUDA 12 workloads, offering customizable device and host memory pools to optimize GPU-centric applications.
Yes, if you are building GPU-accelerated applications on CUDA 12 and need fine-grained memory management. The package is actively maintained, has no known vulnerabilities, and carries a permissive license. Install friction is moderate due to platform-specific wheels, but setup is straightforward on supported systems. Not applicable for CPU-only or non-NVIDIA GPU workflows.
Install
librmm-cu12 on PyPI
pip
pip install librmm-cu12uv
uv add librmm-cu12poetry
poetry add librmm-cu12Installing librmm-cu12
Before you install
Medium install friction due to platform-specific wheels (manylinux_2_24 and manylinux_2_28 for aarch64 and x86_64). Package is actively maintained with recent releases and depends only on rapids-logger. Last release 8 days old; repository shows active development.
License in practice
Apache-2.0 permissive license allows use in commercial and proprietary projects with minimal restrictions, requiring only license attribution.
Quickstart
pip install librmm-cu12
import librmm_cu12
Requires CUDA 12.2+ and Volta architecture GPU (Compute Capability 7.0+); NVIDIA GPU drivers and CUDA toolkit must be installed on the system.
Verify before relying
- Whether the package works on systems without NVIDIA GPUs or falls back gracefully.
- Exact Python version compatibility (requires_python field is unspecified in metadata).
- Whether rapids-logger dependency is optional or required at runtime.
- Specific API surface and memory allocation customization options available in version 26.8.0.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | not specified |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 1 — rapids-logger |
| Maintenance | actively maintained — 8 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 394,901/month — #6,986 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: librmm_cu12-26.8.0-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; librmm_cu12-26.8.0-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Tags
More Scientific/Engineering packages
NumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
pandaspandas provides fast, flexible data structures…
permissive · top 100 on PyPI
scipyscipy provides numerical algorithms for…
permissive · top 100 on PyPI
scikit-learnscikit-learn provides a comprehensive Python…
permissive · top 1,000 on PyPI
dilldill extends Python's pickle module to…
permissive · top 1,000 on PyPI
multiprocessMultiprocess is an enhanced fork of Python's…
permissive · top 1,000 on PyPI
rmm-cu12RMM provides a common interface for customizing…
permissive · top 15,000 on PyPI
cymemcymem provides memory-management helpers for…
permissive · top 5,000 on PyPI
libraft-cu12libraft-cu12 provides CUDA-accelerated…
permissive · top 15,000 on PyPI
umfUMF is a library for constructing and managing…
permissive · top 15,000 on PyPI
libucx-cu12Provides pre-built wheels of the UCX (Unified…
permissive · top 15,000 on PyPI
raft-dask-cu12Provides multi-node multi-GPU distributed…
permissive · top 15,000 on PyPI
nvidia-cuda-cccl-cu12Provides NVIDIA's CUDA C++ Core Compute…
unclear · top 15,000 on PyPI
libcudf-cu12libcudf-cu12 is a GPU-accelerated C++ library…
permissive · top 15,000 on PyPI
cpm-kernelsProvides CUDA kernels optimized for CPM,…
permissive · top 15,000 on PyPI
rapids-loggerrapids-logger provides a CMake-based framework…
permissive · top 15,000 on PyPI