Hold 1.6× more cached context in the same memory and SSD. More returning requests find their context already cached, so the GPU skips reprocessing the prompt and answers sooner.
| Mode | Capacity gain | Output | Notes |
|---|---|---|---|
| Standard | 1.58 to 1.60× | identical, bit for bit | Llama-3.1 8B and 70B on H200, 8k to 128k tokens |
| Extended exact | 3.1 to 3.3× | identical, bit for bit | long-term and archival storage of cached context |
| High capacity | 5 to 9× | as accurate as an fp8 cast, or better | Llama-3.1 8B and 70B on H200; opt-in |
| Model | Context | Uncompressed cache | Capacity gain | Tensors identical |
|---|---|---|---|---|
| Llama-3.1-70B | 128k | 43 GB | 1.59× | 160 / 160 |
| Llama-3.1-70B | 32k | 10.7 GB | 1.59× | 160 / 160 |
| Llama-3.1-70B | 8k | 2.7 GB | 1.59× | 160 / 160 |
| Llama-3.1-8B | 128k | 17.2 GB | 1.58× | 64 / 64 |
| Llama-3.1-8B | 32k | 4.3 GB | 1.58× | 64 / 64 |
| Llama-3.1-8B | 8k | 1.07 GB | 1.58× | 64 / 64 |
| Codec | Capacity gain | Output |
|---|---|---|
| zstd, level 19 | 1.31× | identical |
| weights.zip | 1.60× | identical |
| Model | Cache | From GPU memory | From CPU memory | From NVMe | Recompute the prompt |
|---|---|---|---|---|---|
| Llama-3.1-8B | 17.2 GB | 0.065 s | 0.31 s | 1.76 s | 18.8 s |
| Llama-3.1-70B | 43 GB | 0.14 s | 0.74 s | 4.56 s | 248.6 s |
Recompute is a full prefill with Hugging Face Transformers on the same H200. From CPU memory, a restore takes the same time as copying the uncompressed cache over PCIe while moving 37% fewer bytes. From NVMe it is 1.5× faster than reading the uncompressed cache. Every restore was checked tensor by tensor against the original.
Inside a serving engineIn vLLM, with chunks aligned to its 16-token block, requests restored from weights.zip generated exactly the same tokens as requests served from the engine's own GPU cache: 8 of 8. Recomputing the prompt instead changed the output on 4 of the 8.
weights.zip KV Cache plugs into vLLM through its standard KV connector interface, the same one used by LMCache. Completed chunks of context are stored as they are produced, and a returning request restores its longest stored prefix before the forward pass, so vLLM computes only the new tokens.
from vllm import LLM from vllm.config import KVTransferConfig llm = LLM( model="meta-llama/Llama-3.1-8B-Instruct", kv_transfer_config=KVTransferConfig( kv_connector="KVZipConnector", kv_role="kv_both", kv_connector_extra_config={ "store_path": "/mnt/kvcache", "chunk_tokens": 256, }, ), )
All figures are measured on public models (Qwen2.5 0.5B and 1.5B, Llama-3.1 8B and 70B, Pythia-160M, GPT-2 and a 27B FP8 model) on NVIDIA H100 SXM, H200 and RTX 4060 GPUs. Every restore was checked byte for byte against the original. zstd comparisons use zstd level 19 or NVIDIA nvCOMP Zstd on the same files. Dollar figures assume S3 Standard-class storage at about $24 per TB-month and typical cloud egress pricing. Results depend on the model and data type, so the free benchmark measures yours.