Cómo reducir cuellos de botella KV Cache con NVIDIA Dynamo
Sources: https://developer.nvidia.com/blog/how-to-reduce-kv-cache-bottlenecks-with-nvidia-dynamo, https://developer.nvidia.com/blog/how-to-reduce-kv-cache-bottlenecks-with-nvidia-dynamo/, NVIDIA Dev Blog
TL;DR
- El offload del KV Cache reduce la presión de memoria de la GPU y permite ventanas de contexto más largas.
- NVIDIA Dynamo transfiere el KV Cache de la memoria GPU hacia RAM de CPU, SSD locales o almacenamiento remoto usando la biblioteca de transferencia de baja latencia NIXL.
- La integración con LMCache y vLLM facilita la reutilización del caché, reduce la recomputación y mejora el rendimiento en cargas con múltiples usuarios y alto contexto.
- Pruebas reales con socios muestran movimientos de KV Cache de alto rendimiento y reducción del TTFT, haciendo la inferencia escalable y de alta concurrencia viable.
Contexto y antecedentes
La inferencia es cada vez más un cuello de botella a medida que los modelos de IA crecen. Los grandes modelos de lenguaje (LLMs) dependen fuertemente de los datos de atención almacenados en el KV Cache creados durante la fase de prefill de la inferencia. El KV Cache almacena datos de atención intermedios que ayudan al modelo a mantenerse contextual. Sin embargo, el KV Cache crece linealmente con la longitud del prompt y debe residir en la memoria de la GPU para un acceso rápido. A medida que los modelos amplían las ventanas de contexto —a veces millones de tokens—, el KV Cache se convierte en una limitación seria, ya que la memoria de la GPU es cara y limitada. En casos de uso como conversaciones de varias vueltas, investigación profunda y generación de código, el KV Cache debe permanecer en memoria por periodos prolongados. Cuando la memoria de la GPU alcanza su límite, los sistemas de inferencia enfrentan compromisos entre costo, latencia y capacidad. La última versión de Dynamo aborda este cuello de botella al permitir el offload del KV Cache hacia un almacenamiento más escalable, facilitando la transferencia instantánea de bloques KV Cache desde la memoria GPU hacia RAM de CPU, SSD locales o almacenamiento en red. Esto se apoya en la biblioteca de transferencia de baja latencia NIXL, que mueve bloques KV Cache entre la memoria de la GPU y el almacenamiento externo sin interrumpir la inferencia. Dynamo permite ventanas de contexto más largas, mayor concurrencia y menores costos de infraestructura al reducir la necesidad de GPUs adicionales y evitar la recomputación de tokens cacheados. El offload de KV Cache es más efectivo cuando el KV Cache excede la memoria de la GPU y la reutilización del caché supera el costo de transferencia. Dynamo es especialmente valioso en entornos de inferencia de contexto largo, alta concurrencia o recursos limitados. Está diseñado para integrarse con motores de inferencia populares como vLLM y herramientas de código abierto como LMCache, promoviendo una arquitectura abierta y opciones de implementación flexibles.
Novedades
NVIDIA Dynamo introduce varias capacidades clave para abordar los cuellos de KV Cache:
- Offload de KV Cache hacia almacenamiento escalable: transfiere bloques KV Cache de la memoria GPU hacia RAM de CPU, SSD locales o almacenamiento en red, permitiendo contextos más largos y mayor concurrencia sin necesidad de más GPUs.
- Transferencia de baja latencia: la biblioteca NIXL proporciona movimiento veloz de KV Cache entre memoria GPU y almacenamiento externo, ayudando a mantener la latencia de inferencia.
- Gestión de KV Cache con KVBM: el KV Block Manager coordina el uso de memoria y el acceso al almacenamiento, separando la gestión de memoria de la lógica de engine y estandarizando el acceso al almacenamiento para simplificar la integración y escalabilidad.
- Arquitectura abierta e integraciones: Dynamo funciona con LMCache para caching y reutilización de memoria entre CPUs, almacenamiento local y remoto, y está diseñado para integrarse con engines como vLLM y componentes de terceros.
- Validación en laboratorio: pruebas con Vast demostraron un throughput de KV Cache de 35 GB/s hacia una GPU H100 usando el plugin GDS; pruebas separadas con Qwen3-32B y prompts de 130K tokens mostraron reducción de TTFT al reutilizar KV Cache precalculado desde almacenamiento. WEKA demostró un alto throughput de KV Cache con su Augmented Memory Grid para streaming de KV Cache desde su token warehouse a GPUs a velocidades cercanas a la memoria. En un sistema DGX con ocho GPUs H100, WEKA alcanzó hasta 270 GB/s de lectura. Para usar KVBM con LMCache y vLLM, los usuarios deben seguir los pasos descritos en la documentación de Dynamo. Los paneles de Grafana en http://localhost:3001 permiten ver métricas de onboarding y offload de KV. Para comparar el rendimiento de KVBM con LMBenchmark (LMCache), la documentación ofrece pautas para comparar con una configuración base de vLLM. Esta arquitectura abierta ofrece a los equipos la flexibilidad de elegir entre funcionalidades incorporadas o integraciones de terceros, priorizando interoperabilidad y escalabilidad.
¿Por qué esto importa? (impacto para desarrolladores/empresas)
El offload de KV Cache con Dynamo permite a modelos con ventanas de contexto más largas y mayor concurrencia ejecutarse sin necesitar clústeres de GPUs proporcionados en tamaño. Trasladar KV Cache a almacenamiento de menor costo reduce el uso de memoria GPU, permite atender a más usuarios simultáneamente y disminuye el costo total por token. Evitar la recomputación costosa del KV Cache también contribuye a menores tiempos de respuesta y mejor experiencia de usuario. Para desarrolladores y empresas, Dynamo ofrece una ruta práctica para escalar despliegues de IA generativa a gran escala con contexto amplio. La arquitectura abierta facilita la integración con engines y backends de almacenamiento, ayudando a optimizar latencia, throughput y costo total de propiedad. La apertura y las integraciones de terceros permiten a las organizaciones adaptar Dynamo a sus infraestructuras y objetivos de rendimiento.
Detalles técnicos o implementación
La arquitectura de Dynamo se centra en el offload del KV Cache de la memoria GPU hacia un almacenamiento escalable manteniendo acceso rápido durante la generación. El KVBM coordina la memoria y el acceso al almacenamiento, separando la lógica de gestión de memoria de la lógica específica de la engine de inferencia para facilitar la integración y escalabilidad. Un principio clave es la apertura. Dynamo se integra con LMCache, un sistema de código abierto para caching y reutilización de memoria entre CPUs, almacenamiento local y remoto. LMCache ofrece una capa KV Cache para engines de inferencia como el vLLM y soporta el offload de datos usados con frecuencia (p. ej., historial de conversaciones o prompts) a almacenamiento económico, con estrategias de retirada y recuperación para cargas de alto volumen. Las integraciones con socios muestran la versatilidad de Dynamo:
- Vast: probó movimiento de KV Cache entre GPU y almacenamiento, con KV Cache persistente a través de la integración Vast OS en un sistema DGX H100 y el modelo Qwen3-32B.
- WEKA: demostró un camino RDMA de lectura a cero copia que transmite KV Cache desde su token warehouse hacia las GPUs a velocidades cercanas a la memoria, validando la viabilidad de inferencia disociada sin cuellos de botella. En un DGX con ocho GPUs H100, WEKA alcanzó 270 GB/s de lectura. Las opciones de almacenamiento para offload incluyen RAM de CPU, SSD locales y almacenamiento remoto en red. La biblioteca NIXL ofrece el transporte de baja latencia necesario para mover rápidamente los bloques KV Cache sin interrumpir la inferencia. Cuando la reutilización del KV Cache es significativa y el costo de transferencia se ve superado por los beneficios, Dynamo ofrece mayor throughput y latencia reducida en despliegues a gran escala. Para habilitar KVBM con LMCache y vLLM, la documentación de Dynamo ofrece pasos prácticos y configuraciones. Los paneles de Grafana en http://localhost:3001 permiten ver onboarding de KV y offload, mientras que las guías de benchmarking con LMBenchmark ayudan a evaluar KVBM frente a una línea de base de deployment de vLLM.
Visión rápida de la arquitectura de offload KV Cache
| Backends de almacenamiento | Características |
| Casos de uso típicos |
|---|
| --- |
| --- |
| RAM de CPU |
| Inferencia de contexto largo, multiusuario |
| SSD locales |
| Cargas pico, sesiones largas |
| Almacenamiento remoto en red |
| Inferencia a gran escala, distribuida |
Conclusiones clave
- Offload de KV Cache con Dynamo reduce la presión de memoria en la GPU y permite contextos más largos y mayor concurrencia.
- KVBM coordina la memoria y el acceso al almacenamiento, favoreciendo la reutilización del caché e integraciones escalables.
- LMCache y vLLM aportan caching, estrategias de eviction y reducción de recomputación, mejorando el throughput.
- Los resultados de pruebas de socios muestran throughput alto y latencia reducida, validando la eficacia de Dynamo en entornos disgregados.
- Una arquitectura abierta ofrece flexibilidad para elegir entre funcionalidades integradas o integraciones de terceros, manteniendo la interoperabilidad y escalabilidad.
FAQ
-
¿Qué problema resuelve el offload de KV Cache?
Mueve KV Cache de la memoria GPU a un almacenamiento escalable para soportar contextos más largos y mayor concurrencia sin requerir más GPUs.
-
¿Qué rol cumple KVBM en Dynamo?
KVBM es el sistema que gestiona el offload de KV Cache y la coordinación de memoria, separando la gestión de memoria de la lógica de la engine y estandarizando el acceso al almacenamiento.
-
¿Cómo encaja LMCache en Dynamo?
LMCache ofrece una capa KV Cache para engines como vLLM y soporta offload de datos usados con frecuencia a almacenamiento económico, con estrategias de eviction inteligentes.
-
¿Qué resultados de rendimiento se observaron?
Pruebas muestran 35 GB/s de throughput con GDS en una GPU H100 y hasta 270 GB/s de lectura en ocho GPUs mediante el camino RDMA de WEKA, con TTFT reducido al reutilizar KV Cache precalculado.
Referencias
- NVIDIA Dev Blog: https://developer.nvidia.com/blog/how-to-reduce-kv-cache-bottlenecks-with-nvidia-dynamo/
- Panel de métricas Grafana: http://localhost:3001
More news
NVIDIA HGX B200 reduce la intensidad de las emisiones de carbono incorporado
El HGX B200 de NVIDIA reduce la intensidad de carbono incorporado en un 24% frente al HGX H100, al tiempo que ofrece mayor rendimiento de IA y eficiencia energética. Este artículo resume los datos PCF y las novedades de hardware.
Predecir Eventos Climáticos Extremos en Minutos sin Supercomputadora: Huge Ensembles (HENS)
NVIDIA y Berkeley Lab presentan Huge Ensembles (HENS), una herramienta de IA de código abierto que pronostica eventos climáticos raros y de alto impacto usando 27,000 años de datos, con opciones de código abierto o listas para usar.
Microsoft transforma el sitio de Foxconn en el data center Fairwater AI, descrito como el más poderoso del mundo
Microsoft anuncia planes para un data center Fairwater AI de 1,2 millones de pies cuadrados en Wisconsin, con cientos de miles de GPU Nvidia GB200. El proyecto de 3.3 mil millones de dólares promete un entrenamiento de IA sin precedentes.
Manual de los Grandmasters de Kaggle: 7 Técnicas de Modelado para Datos Tabulares
Un análisis detallado de siete técnicas probadas por los Grandmasters de Kaggle para resolver rápidamente conjuntos de datos tabulares mediante aceleración por GPU, desde baselines variados hasta ensamblaje y pseudo-etiquetado.
NVIDIA RAPIDS 25.08 Agrega Nuevo profiler para cuML, Mejoras en el motor GPU de Polars y Soporte Ampliado de Algoritmos
RAPIDS 25.08 introduce perfiles de nivel de función y de línea para cuml.accel, el ejecutor de streaming por defecto del motor Polars GPU, soporte ampliado de tipos y cadenas, Spectral Embedding en cuML y aceleraciones de cero código para varios estimadores.
Decodificación especulativa para reducir la latencia en la inferencia de IA: EAGLE-3, MTP y enfoques Draft-Target
Análisis detallado de la decodificación especulativa para inferencia de IA, incluyendo Draft-Target y EAGLE-3, su impacto en latencia y cómo implementar con TensorRT de NVIDIA.