cuCascade
A high-performance GPU memory management library for data-intensive applications requiring intelligent tiered memory allocation across GPU, host, and disk storage.
Overview
Key Features:
- Tiered Memory Management: Seamlessly manage GPU (fastest), pinned host (medium), and disk (largest capacity) memory tiers, provides numa aware allocators
- Memory Reservation System: Avoid oversubscribing your GPU by making reservations and using allocators that respect reservations
- Hardware Topology Discovery: Automatic detection of NUMA regions and GPU-CPU affinity for optimal memory placement
- Stream-Aware Tracking: Per-stream memory usage tracking and reservation enforcement
- cuDF Integration: Native support for GPU DataFrames with batch processing capabilities and spilling to Host or Disk
- Pluggable Policies: Control what happens when you OOM, try to allocate more than a reservation, how you pick what data to spill, by creating policies that plug into the system.
Getting Started
# Option A: Using Pixi (recommended)
curl -fsSL https://pixi.sh/install.sh | bash
git clone https://github.com/nvidia/cuCascade.git
cd cuCascade
pixiโฆ