Friendly disclaimer: flozi00 TechHub is a solo side-project next to a full-time job — personal learning notes, no official statements. Verify critical steps yourself.
Watch one agent's KV cache fill a node's free HBM as context grows — across GQA, MLA and hybrid attention models, with a live console fill bar per model.
GQA stores full K/V for its KV groups; MLA stores a latent representation and positional state. A hybrid model may grow KV only in its attention layers while retaining separate recurrent state elsewhere.
A GPU group has a fixed amount of device memory. Weights take their share, and some of the remainder can hold KV cache for concurrent requests. KV size depends on the attention architecture, the number of cached layers, sequence length and cache dtype.
Pick a GPU and group width, choose weight precision, then drag the context slider to compare GQA, MLA and hybrid attention. Each row assumes one model per GPU group with sharded weights and pooled memory. Pooling across devices requires a suitable parallel runtime and topology; an aggregate fit is not a per-device placement guarantee.
The curves are simplified capacity estimates, using the same model and GPU presets and kvPerToken() formula as the inference calculator. Their free-memory estimates can differ because the inference calculator also reserves activation memory and uses a different placement assumption.
Interactive Estimator
KV cache memory growth explorer
Watch one agent’s KV cache fill the node’s free HBM as its context grows — across attention families (GQA, MLA, hybrid linear attention). The same model and GPU data as the inference calculator, so every number stays consistent.
Three architectural choices decide the slope of each curve:
GQA stores the full K and V for its KV groups. Llama-3.3-70B keeps 8 KV heads × 128 head-dim over 80 layers — 320 KiB per token in BF16.
MLA stores a compressed latent instead. In the GLM-5.2 preset, kv_lora_rank 512 + 64 RoPE dimensions yields ~88 KiB/token in BF16. A hypothetical ungrouped 64-KV-head baseline at the same head dimension would use ~3.7 MiB/token, about 43× more. This comparison is not an actual GQA variant of GLM-5.2.
Hybrid linear attention (Qwen3-Next) keeps attention KV in every fourth layer (2 KV heads × 256 head dimensions): ~24 KiB/token in BF16. The estimate excludes the fixed-size recurrent states of its other 36 layers.
In the default 8×B300 scenario with the GLM-5.2 preset and FP8 weight assumption, a 128 Ki-token request uses about 11 GiB of BF16 KV; the aggregate pool estimate admits 116 such requests. At 1 Mi tokens, it uses about 88 GiB and the estimate admits 14. These are arithmetic ceilings, not achievable concurrency or throughput predictions.
The estimate ignores prefill activation peaks, prefix sharing, speculative-decoding KV, recurrent states, attention-index buffers, offloading, fragmentation and per-device placement. Some features reduce memory use and others increase it. Treat the result as an aggregate arithmetic bound.