Skip to content
Cómo reducir cuellos de botella KV Cache con NVIDIA Dynamo
Source: developer.nvidia.com

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

More news