KV Cache Offloading

CPU and disk offloading integrations for vLLM in Dynamo
View as Markdown

Dynamo supports multiple KV cache offloading backends for vLLM, allowing you to extend effective KV cache capacity beyond GPU memory using CPU RAM and disk storage. Each backend integrates through vLLM’s connector interface; the deployment modes each backend supports are listed in its section.

Native OffloadingConnector

vLLM’s built-in OffloadingConnector offloads KV blocks to pinned CPU memory with no additional dependency, and integrates with Dynamo’s KV-aware routing through self-describing KV events. Aggregated serving with event-driven KV routing is validated; disaggregated serving is not yet validated with the Dynamo KV router.

For the full support matrix, required versions, and configuration, see Native KV Offloading.

KVBM

KVBM (KV Block Manager) is Dynamo’s built-in KV cache offloading system. It provides a three-layer architecture (LLM runtime, logical block management, NIXL transport) with support for CPU and disk cache tiers, and integrates natively with Dynamo’s KV-aware routing and disaggregated serving.

DeploymentLaunch Script
Aggregatedagg_kvbm.sh
Aggregated + KV routingagg_kvbm_router.sh
Disaggregated (1P1D)disagg_kvbm.sh
Disaggregated (2P2D)disagg_kvbm_2p2d.sh
Disaggregated + KV routingdisagg_kvbm_router.sh

For configuration details, see the KVBM Guide.

LMCache

LMCache is an open-source KV cache engine that provides prefill-once, reuse-everywhere caching with multi-level storage backends (CPU RAM, local storage, Redis, GDS, InfiniStore/Mooncake).

DeploymentLaunch Script
Aggregated (MP sidecar — recommended)agg_lmcache_mp.sh
Aggregated (legacy, in-process)agg_lmcache.sh
Aggregated (legacy, multiprocess metrics)agg_lmcache_multiproc.sh
Disaggregateddisagg_lmcache.sh

For configuration details, see the LMCache Integration Guide.

FlexKV

FlexKV is a scalable, distributed KV cache runtime developed by Tencent Cloud’s TACO team. It supports multi-level caching (GPU, CPU, SSD), distributed KV cache reuse across nodes, and high-performance I/O via io_uring and GPUDirect Storage.

DeploymentLaunch Script
Aggregatedagg_flexkv.sh
Aggregated + KV routingagg_flexkv_router.sh
Disaggregateddisagg_flexkv.sh

For configuration details, see the FlexKV Integration Guide.

See Also