大模型推理正从“能不能跑”转向“跑得省不省”。当上下文窗口从8K扩展到128K乃至百万级,单次请求的KV缓存(Key-Value Cache)占用可达数十GB,显存很快被吃满,并发数被迫下降。把KV缓存从显存中解耦出来、在云上分层存放并跨节点复用,正成为云推理基础设施最受关注的工程方向。
KV缓存为何成为瓶颈
Transformer在自回归解码时,需要复用历史token的键值张量以避免重复计算,这就是KV缓存。它的体积与上下文长度、批大小、层数和隐藏维度成正比,长上下文叠加高并发时,单卡显存根本装不下。更关键的是,解码阶段本质是访存密集型任务,显存带宽与容量共同构成天花板。分页注意力机制用分页管理显著减少了显存碎片,但并没有改变容量上限,于是“把冷数据请出显存”成为自然选择。
三条正在收敛的工程路径
- 分层卸载:把久未访问的KV块卸载到主机内存、本地NVMe SSD甚至远端共享存储,热块留在HBM,按需换入换出。已有开源组件把这一思路做成可插拔的缓存层,在长上下文对话中明显提升并发能力。
- 前缀缓存与缓存感知路由:大量请求共享同一段系统提示词或文档前缀,若把它们路由到同一实例,就能直接复用已算好的KV块,首字延迟显著下降。缓存命中率因此成为新的调度指标。
- 预填充解码分离与高速传输:把计算密集的预填充与访存密集的解码拆到不同资源池,KV缓存通过RDMA等高速网络搬运,围绕“以KV为中心”重构推理流水线。
云厂商的工程化落点
在公有云上,KV缓存正在从框架内部细节变成一项可被编排的基础能力。一类做法是把缓存下沉到托管的内存数据库或分布式缓存服务,由平台负责容量弹性、跨实例共享与生命周期管理;另一类做法是在容器与调度层引入缓存感知的放置策略,让推理实例与缓存节点尽量同机架、同可用区,减少跨网络搬运。
随之而来的问题同样现实:KV块的序列化与反序列化会消耗CPU,网络带宽可能取代显存成为新瓶颈;多租户共享缓存必须解决隔离与加密,因为缓存中可能残存用户隐私内容;缓存失效与一致性策略若设计不当,反而会带来正确性风险。此外,卸载到SSD的时延抖动,也会影响长尾延迟这一推理服务最敏感的指标。
结语
KV缓存分层与共享的价值,不只是省下几块显卡。它让显存、内存、闪存和网络在推理链路中各司其职,使长上下文、高并发与成本可控三者不再互相排斥。可以预见,缓存命中率、单位token成本与跨节点传输效率,将像当年的吞吐与延迟一样,成为衡量云推理平台的关键刻度。