NeFut Logo NeFut
EN 管理员登录

[AI学术] KV 缓存应放在哪里?GPU、CPU 与 SSD 的层级策略

发布于:2026-09-16 22:00 最后更新:2026-09-18 00:46
#AI #optimization #LLM

GPU 的高带宽内存(HBM)稀缺且昂贵,而 KV 缓存会随着聊天、代理循环和文档问答的状态累积占用大量显存。Mooncake、LMCache、FlexGen、InfiniGen、AttentionStore 等系统通过 CPU DRAM 与 SSD 扩展 GPU 内存,但关键在于:哪些块应放在哪一层、何时迁移或淘汰、预取是否有益。我们在离散事件模拟器中对 GPU HBM、CPU DRAM 与 SSD 进行建模,并使用随机森林预测执行时间。

我们比较了四种置换策略:最近使用(recency)、复用频率(reuse frequency)、预测复用(predicted reuse)以及带预取前瞻的 EWMA 预测,分别在聊天、代理和文档问答三类工作负载上进行评估。

实验表明,层级缓存使每块 GPU 能支持 73.02 倍更多并发会话,单位会话成本降低 62.04 倍。这些收益主要来源于容量配置 1+8+64(GPU、CPU、SSD),而非置换策略本身。由于在 batch size 为 1 时解码计算受限,置换策略对吞吐量影响有限,主要影响 PCIe 迁移流量和首 token 延迟。

在聊天场景下,recency 能将迁移流量降低 2.30 倍,相比 reuse frequency 更省带宽;而在代理和文档问答中,reuse frequency 的表现最佳。预测复用策略与 recency 完全相同,实际推荐等价于 recency。EWMA 虽然改变了行为,但在所有工作负载上仍落后于 reuse frequency。

预取的带宽开销并未带来收益,即使是拥有未来请求全知的 oracle 预取,也无法在迁移流量上超越不预取的方案。工作负载特定的置放可以减少数据移动,但当前实现并未支持预测复用和预取的推荐。

点评:层级缓存的容量配置是提升会话并发和降低成本的关键,置换策略的细微差别只在特定工作负载下影响迁移流量。预取在当前带宽限制下并不划算,未来的实现需在硬件支持和策略精度上进一步平衡。

原文链接: https://arxiv.org/abs/2609.16215

[h] 返回首页