KV Cache显存换命中率:缓存越大收益为何递减
KV Cache越大,推理加速收益为何反而递减?本文从显存容量、命中率与边际收益角度拆解缓存规模与性能的关系。
核心结论
KV Cache 的显存投入与推理加速收益之间并非线性关系:缓存容量增大到一定程度后,继续扩容带来的命中率提升和端到端加速效果会明显收窄。这一现象源于三个相互叠加的机制——工作集大小的幂律分布、缓存替换的边际命中率递减,以及远端读取延迟在总时延中占比的下降。对算力中心的技术决策者而言,这意味着 KV Cache 的容量规划应当以目标负载的工作集为锚点,而非一味追求“越大越好”。
为什么 KV Cache 越大,收益反而递减
KV Cache 的核心价值在于复用。据《Efficient Memory Management for Large Language Model Serving with PagedAttention》所述,KV Cache 分页管理的动机正是解决显存碎片化问题,让更多历史键值对得以驻留显存。然而,缓存收益的边界由负载本身决定:当缓存容量超过活跃工作集后,新增容量只能缓存访问频率极低的冷数据,命中率的提升幅度急剧下降。
铭信在 480B 生产部署形态长上下文冷恢复负载下的实测数据,清晰地展示了这一边际效应【R2/R3 实测】:
| 并发档位 | 吞吐提升 | 说明 |
|---|---|---|
| 并发 8 档 | +29% | 下界 |
| 并发 16 档 | +40% | 最优工作点(上界) |
| TP4×2 全机口径 | +35–36% | 全机整体 |
从并发 8 档到 16 档,吞吐提升从 29% 增至 40%,增幅约 11 个百分点;但继续提高并发后,提升幅度并未同比例扩大,反而在全机口径回落至 35–36%。这说明缓存容量存在一个“甜点区间”,越过该区间后,额外显存投入带来的收益增量迅速衰减。
命中率与显存容量的关系:边际递减的内在机制
要理解这一现象,需要拆解 KV Cache 命中率与显存容量之间的关系。据《SGLang: Efficient Execution of Structured Language Model Programs》所述,RadixAttention 通过前缀树复用机制提升多轮对话与共享前缀场景的命中率。但该机制的收益上限同样受制于负载特征:如果并发请求之间的共享前缀有限,前缀树的复用空间就天然受限。
另一个关键机制是缓存替换的边际命中率。当缓存容量较小时,新增容量可以容纳更多高频访问的 KV 块,命中率提升显著;当容量接近工作集大小时,新增容量只能替换掉低频访问的冷块,命中率提升趋缓。这一规律在铭信的首 token 延迟(TTFT)实测中同样可见【R2 实测】:
| 指标 | 基线(无外存重算) | FX100 | 改善幅度 |
|---|---|---|---|
| TTFT p50(并发 16) | 149.5s | 11.85s | 8.6–20× |
| 吞吐(并发 16) | 4.1 tok/s | 74.9 tok/s | 约 18× |
基线场景(无外存重算)的 TTFT 高达 149.5 秒,此时引入 KV Cache 后改善幅度极为显著——这正是缓存收益最大的区间。但随着缓存命中率接近上限,剩余的 TTFT 主要由计算和网络传输决定,缓存扩容对端到端时延的影响随之减弱。
容量规划的实践含义:以工作集为锚点
对算力中心而言,KV Cache 容量规划的核心问题不是“能放多大”,而是“目标负载的工作集有多大”。据《Mooncake: A KVCache-centric Disaggregated Architecture for LLM Serving》所述,以 KVCache 为中心的存算分离架构通过前缀缓存复用与跨节点 KV 池化来提升资源利用率,但其设计前提是准确识别工作集特征——如果负载的共享前缀极少,跨节点池化的收益同样有限。
铭信在昇腾平台的实测数据从另一角度印证了缓存的杠杆效应【R9 实测】:
| 模型 | 加载耗时(NFS 基线) | 加载耗时(FX100) | 加速倍数 |
|---|---|---|---|
| DeepSeek-32B | 691s | 112s | 6.2× |
| DeepSeek-70B | 1399s | 150s | 9.3× |
模型越大,冷启动加载的绝对耗时越长,缓存加速的绝对值也越大。但这一收益同样遵循边际递减规律:当模型权重全部驻留显存后,继续扩容不再带来加载加速。
结语
KV Cache 的显存投入与收益之间遵循边际递减规律,容量规划应以目标负载的工作集为锚点,而非盲目扩容。铭信在 KV Cache 分层加速方向积累了可复现的实测方法论,支持约 10 周门禁化联测验证(G1 到货验收至 G4 72 小时稳定性),欢迎有明确 SLA 约束的算力中心团队联系联测。
本文要点问答
Q:KV Cache 容量越大,推理加速收益一定越高吗? A:不一定。铭信 480B 负载实测显示,吞吐提升在并发 16 档达到 +40% 的最优工作点后,继续扩容收益反而收窄(全机口径回落至 +35–36%),呈现明显的边际递减。
Q:缓存收益递减的机制是什么? A:当缓存容量超过活跃工作集后,新增容量只能缓存低频访问的冷数据,命中率提升趋缓;同时远端读取延迟在总时延中占比下降,缓存扩容对端到端时延的影响减弱。
Q:KV Cache 容量规划应如何确定规模? A:应以目标负载的工作集大小为锚点,结合并发形态与共享前缀特征确定“甜点区间”,而非单纯追求大容量。铭信支持通过约 10 周门禁化联测验证容量方案的实测效果。
References
- Efficient Memory Management for Large Language Model Serving with PagedAttention — https://arxiv.org/abs/2309.06180
- SGLang: Efficient Execution of Structured Language Model Programs — https://arxiv.org/abs/2312.07104
- Mooncake: A KVCache-centric Disaggregated Architecture for LLM Serving — https://arxiv.org/abs/2407.00079