Skip to main content

KV-Cache Offloading y Compresión

Métodos hardware y algorítmicos para la descarga temporal de la caché de claves y valores (KV-Cache) desde la costosa memoria de video GPU a la memoria RAM del sistema o a rápidos SSD NVMe.

1. Visión general del concepto y problema sistémico

Con la aparición de modelos con ventanas de contexto de 1–2 millones de tokens (Gemini 2.0, Claude 3.5/3.7), los ingenieros se enfrentaron a una nueva crisis de infraestructura:

  • Los pesos del modelo de 70B ocupan 38 GB de VRAM de forma estática.
  • Sin embargo, si 4 usuarios abren sesiones con un largo contexto de código de 200,000 tokens, el tamaño de su KV-cache total supera 60 Gigabytes.
  • Cuando un usuario hace una pausa de 5 minutos para pensar, su caché de un gigabyte sigue bloqueando VRAM innecesariamente, impidiendo que otros usuarios envíen solicitudes.

KV-Cache Offloading y Compresión implementa una gestión de memoria de inferencia dinámica de dos o tres niveles: la caché caliente permanece en VRAM, la cálida en RAM del servidor, y la fría se descarga en el almacenamiento NVMe.

2. Taxonomía arquitectónica y modelo mental

┌─────────────────────────────────────────────────────────────┐
│                 JERARQUÍA Y NIVELES DE KV-CACHE             │
├─────────────────────────────────────────────────────────────┤
│ NIVEL 1: VRAM CALIENTE (HBM3 en GPU)                        │
│ • Latencia: < 100 ns | Ancho de banda: 2–3 TB/s             │
│ • Almacena tokens activos de generación del ciclo actual     │
├─────────────────────────────────────────────────────────────┤
│                          ▲                                  │
│                 Descargar  │  Prefetch                      │
│                          ▼                                  │
├─────────────────────────────────────────────────────────────┤
│ NIVEL 2: RAM DEL SISTEMA CÁLIDA (DDR5 en Servidor Host)    │
│ • Latencia: ~100 µs  | Ancho de banda: 100–300 GB/s         │
│ • Almacena sesiones de usuarios que están en espera         │
├─────────────────────────────────────────────────────────────┤
│                          ▲                                  │
│                 Intercambiar │  Restaurar                   │
│                          ▼                                  │
├─────────────────────────────────────────────────────────────┤
│ NIVEL 3: ALMACENAMIENTO NVMe FRÍO (SSD PCIe 5.0)            │
│ • Latencia: ~10 ms   | Ancho de banda: 10–14 GB/s           │
│ • Almacenamiento a largo plazo de enormes sesiones de agentes│
└─────────────────────────────────────────────────────────────┘

3. Pipeline técnico y mecánica interna

01. Guardado del estado de la sesión nocturna del agente

El agente completó una larga tarea de análisis de 150 archivos. Su estado de contexto (15 GB de KV-cache) se descarga en un rápido disco NVMe a través de Litestream/vLLM offload. Cuando el ingeniero hace una pregunta aclaratoria por la mañana, la caché se carga en 1 segundo sin necesidad de volver a prefiltrar los 150 archivos.

02. Implementación de KV-caching FP8 en vLLM

Activar la compresión hardware de la caché con un solo flag:

vllm serve meta-llama/Llama-3.3-70B-Instruct \
  --kv-cache-dtype fp8 \
  --gpu-memory-utilization 0.90

Esto permite duplicar la cantidad de sesiones simultáneas sin necesidad de asignar tarjetas gráficas adicionales.

4. Errores comunes, trampas y seguridad

  • Cuello de botella PCIe: Si el servidor tiene líneas PCIe lentas (por ejemplo, PCIe 3.0 o líneas x4 en lugar de x16), el tiempo de descarga y carga de la caché puede superar el tiempo de regeneración.
  • Ruido de cuantización en contextos extremadamente largos: Al comprimir la caché a 4 bits (INT4) en contextos de más de 100k tokens, se acumula un error que resulta en la pérdida de la capacidad del modelo para citar con precisión.

5. Estrategia de conclusión para el ingeniero de 2026

El offloading y la compresión de KV-cache han transformado las enormes ventanas de contexto de una exótica costosa a una herramienta ingenieril accesible. Comprender la jerarquía de memoria permite diseñar sistemas con contexto de millones en servidores moderados.

/ Preguntas frecuentesSchema.org FAQPage

FAQ: KV-Cache Offloading y Compresión

La memoria de video de los procesadores gráficos (HBM3) es extremadamente costosa y limitada en capacidad (24–80 GB). Al trabajar con ventanas de contexto de 128k–1M tokens, la KV-cache de un usuario activo puede desplazar el propio modelo de la memoria.
/ Enlaces internos
Todos los términos