umf
Unified Memory Framework
Decision gist · record as of 2026-08-14
Yes, with conditions. UMF is actively maintained, permissively licensed, and has no known vulnerabilities. Install it if you need fine-grained control over memory allocation strategies across multiple pools or hardware resources. However, verify that Python bindings meet your needs first—the package appears to be primarily a C/C++ library, and the extent of Python integration is unclear from the metadata. Medium install friction due to compiled dependencies is acceptable for the use case.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- UMF is a compiled C/C++ library distributed as a wheel.
- Requires compatible system architecture (x86_64 on Linux/Windows) and tcmlib as a runtime dependency.
- Medium install friction due to compiled wheels and a runtime dependency on tcmlib.
License · maintenance · safety
Apache-2.0 with LLVM exceptions (permissive) — Licensed under Apache-2.0 with LLVM exceptions (permissive). This allows commercial and private use with minimal restrictions, though you should review the LLVM exception clause for your specific use case.
last release 2026-04-24 (112 days) · last repo commit 2026-08-14 · 96 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 586,598 downloads/mo, #5,880 on PyPI
Alternatives
Verify before relying
pip install umf
import umf
# UMF is primarily a C/C++ library; Python bindings or usage patterns depend on tcmlib integration- Whether Python bindings are fully functional or if this is primarily a C/C++ library with limited Python exposure
- Specific Python version support (requires_python is unspecified in metadata)
- How tcmlib integrates with UMF and what additional setup may be needed
- Whether the library requires system-level dependencies beyond tcmlib (e.g., hwloc, compiler toolchain)
What it is and what it does
UMF is a memory management framework that lets you build custom allocators and manage multiple memory pools with different characteristics. It abstracts memory providers (which handle coarse-grained allocation from the OS or fixed buffers) and pool allocators (which handle fine-grained allocation and pooling), allowing you to isolate different allocation types and direct them to different hardware resources as needed.
The library ships as a compiled wheel and depends on tcmlib at runtime. It supports both Linux and Windows platforms and includes predefined providers (OS memory, fixed buffer) and allocators, as well as interfaces for writing custom ones. While the description emphasizes C/C++ usage with examples in those languages, the Python package metadata and wheel distribution suggest some Python-facing capability, though the extent and maturity of Python bindings are not clearly documented in the fact sheet.
Use it for
- Isolate GPU memory allocations (via Level Zero or CUDA providers) from CPU allocations in heterogeneous compute applications
- Build custom memory pools with different performance characteristics (e.g., jemalloc-backed vs. OS-backed) for different workload phases
- Manage pre-allocated fixed buffers for real-time or embedded systems where allocation patterns must be deterministic
- Benchmark and profile memory allocation behavior using UMF's built-in micro-benchmarks and statistics APIs
- Implement IPC (inter-process communication) with shared memory on Linux using the OS provider's shared memory mapping mode
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, with conditions.
UMF is actively maintained, permissively licensed, and has no known vulnerabilities. Install it if you need fine-grained control over memory allocation strategies across multiple pools or hardware resources. However, verify that Python bindings meet your needs first—the package appears to be primarily a C/C++ library, and the extent of Python integration is unclear from the metadata. Medium install friction due to compiled dependencies is acceptable for the use case.
Install
umf on PyPI
Before you install
Medium install friction due to compiled wheels and a runtime dependency on tcmlib. The package is actively maintained with recent commits and has been in production use since its initial release in October 2024.
UMF is a compiled C/C++ library distributed as a wheel. Requires compatible system architecture (x86_64 on Linux/Windows) and tcmlib as a runtime dependency.
License in practice
Licensed under Apache-2.0 with LLVM exceptions (permissive). This allows commercial and private use with minimal restrictions, though you should review the LLVM exception clause for your specific use case.
Quickstart
pip install umf
import umf
# UMF is primarily a C/C++ library; Python bindings or usage patterns depend on tcmlib integration
Verify before relying
- Whether Python bindings are fully functional or if this is primarily a C/C++ library with limited Python exposure
- Specific Python version support (requires_python is unspecified in metadata)
- How tcmlib integrates with UMF and what additional setup may be needed
- Whether the library requires system-level dependencies beyond tcmlib (e.g., hwloc, compiler toolchain)
Package facts
| License | Apache-2.0 with LLVM exceptions permissive |
| Python support | Not specified |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | 1 packagetcmlib |
| Maintenance | Actively maintained 112 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 586,598 / month, #5,880 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: EducationIntended Audience :: Other AudienceIntended Audience :: Science/ResearchIntended Audience :: System AdministratorsLicense :: Other/Proprietary LicenseOperating System :: Microsoft :: WindowsTopic :: Software Development :: Libraries |
Evidence: umf-1.1.0-py2.py3-none-manylinux_2_28_x86_64.whl; umf-1.1.0-py2.py3-none-win_amd64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “memory pool allocator”
- umfUMF is a library for constructing and managing memory allocators and…
- cymemcymem provides memory-management helpers for Cython that tie…
- comfy-aimdoA PyTorch VRAM allocator that dynamically offloads model weights to…
Give your agent the search over MCP, or paste the wish link into any chat.
More Libraries packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.
Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.
See also omnimalloc · librmm-cu12 · rmm-cu12 · cymem · intel-cmplr-lib-ur · intel-openmp · nvidia-nvshmem-cu12 · nvidia-nvshmem-cu13 · smmap · nvidia-cuda-runtime-cu12