论文

KV缓存该放在哪里?长会话的GPU、CPU与SSD分层策略

Where Should the KV Cache Live? Placement Policies Across GPU, CPU, and SSD for Long-Lived Sessions

模型推理KV Cache

摘要

GPU高带宽内存稀缺昂贵,聊天、智能体循环和文档问答累积状态时KV占用很大。Mooncake、LMCache、FlexGen、InfiniGen、AttentionStore通过CPU内存和SSD扩展GPU。更难的问题是块应在哪层、何时移动或逐出、预取是否有用。我们在覆盖GPU HBM、CPU DRAM和SSD的离散事件模拟器中研究,以随机森林执行时间预测器校准,比较最近使用、复用频率、预测复用及带前瞻预取的EWMA策略。分层支持每GPU多73.02倍并发会话,每会话成本降低62.04倍,收益来自1+8+64的层容量而非放置策略。本设置批量1解码受计算限制,放置几乎不影响吞吐,主要改变PCIe迁移和首token时间。聊天中最近使用比频率策略迁移少2.30倍;智能体和文档问答中频率最佳。现有预测复用逐字节等同最近使用,其智能体推荐实际也是最近使用。真正EWMA预测改变行为,却仍在预期受益负载上落后频率策略。预取不值得其带宽成本;整个策略及缓存规模网格中,即使知道未来请求的理想预取,也从未在迁移流量上胜过不预取。按负载放置可减少移动,但所实现预测复用与预取推荐不获支持。

KV缓存该放在哪里?长会话的GPU、CPU与SSD分层策略:论文配图
图1:研究总览。(1)GPU HBM容量小且昂贵,长会话积累的KV缓存会超出容量。(2)缓存可分层放于GPU HBM、CPU DRAM和SSD,但块位置及迁移时机仍需策略决定。(3)研究构建复用感知的晋升与预取层,在聊天、智能体和文档问答负载上比较不同策略。