大模型推理KV Cache外置存储的实现路径
KV Cache外置存储是长上下文推理降本的关键。本文梳理存算分离、分页管理与加速数据通路三条主流技术路径及其适用边界。
长上下文推理场景下,KV Cache 占用显存快速增长,外置存储成为平衡成本与性能的可行方向。当前技术实现主要沿三条路径展开:以存算分离架构将 KV Cache 下沉到远端内存池、以分页与前缀复用机制提高缓存命中率、以及通过高速网络与直连存储协议缩短外置访问延迟。三条路径并非互斥,实际部署中往往组合使用,其效果与模型规模、并发形态和硬件平台强相关。
路径一:存算分离架构下的远端 KV 池化
存算分离是当前 KV Cache 外置的主流架构思路。据《Mooncake: A KVCache-centric Disaggregated Architecture for LLM Serving》,该架构以 KV Cache 为中心,将预填充与解码阶段拆分到不同计算节点,并通过跨节点 KV 池化实现缓存资源的弹性共享。其核心动机在于:预填充阶段计算密集、解码阶段访存密集,两类负载对资源的需求特征差异显著,物理隔离后可按各自瓶颈独立扩缩容。
这一路径的实现要点在于缓存池的调度策略。远端 KV 池需要处理缓存未命中时的数据回传延迟,因此通常配合前缀缓存复用机制,将重复出现的系统提示词、few-shot 示例等公共前缀持久化在远端,减少重复计算。铭信在 480B 生产部署形态的实测中观察到,KV 分层加速对长上下文冷恢复负载的吞吐提升落在 +29–40% 区间(并发 8 档为下界 +29%,最优工作点并发 16 档为上界 +40%,TP4×2 全机口径 +35–36%),其中冷恢复场景正是远端池化收益最明显的工况【R2/R3 实测】。
路径二:分页管理与前缀树复用提升命中率
外置存储的访问延迟远高于显存,因此提高缓存命中率是降低外置访问频次的关键。据《Efficient Memory Management for Large Language Model Serving with PagedAttention》,KV Cache 分页管理借鉴操作系统虚拟内存的分页思想,将连续的逻辑 KV 块映射到非连续的物理显存页,从而消除显存碎片、提高批处理吞吐。据《SGLang: Efficient Execution of Structured Language Model Programs》,RadixAttention 机制进一步以前缀树结构组织缓存,使多轮对话与共享前缀场景下的缓存复用率显著提升。
这两项工作为外置存储方案提供了重要前提:只有缓存管理粒度足够细、复用算法足够高效,外置存储的容量优势才能转化为实际的命中收益。铭信在单卡并发 16 的冷读盘场景(Qwen2.5-32B)中,配合 LMCache 并行读补丁测得 TTFT 从 37.97s 降至 9.30s,改善 4.1×,带宽从 0.98 GB/s 提升至 5.23 GB/s【R1 实测】。该结果说明,在缓存管理算法优化到位的前提下,外置存储的读带宽可以逼近实用水平。
路径三:高速网络与直连存储协议缩短访问延迟
外置存储的物理位置决定了访问延迟的下限,因此数据通路设计是第三条关键路径。据 NVIDIA GPUDirect Storage Documentation,GPU 直连存储技术允许数据绕过 CPU 与主机内存的 bounce buffer,在 GPU 与存储设备之间建立直接数据通路,从而降低拷贝次数与延迟。这一机制适用于需要频繁将大块数据从存储载入显存的场景,与 KV Cache 外置的访问模式高度契合。
在协议层面,NVMe-oF(NVMe over Fabrics)配合 RoCEv2 是当前低延迟网络存储的主流组合。铭信 FX100 全闪 NVMe-oF 阵列即采用 RoCEv2 与单口 100 GbE 配置,在华为 Atlas 910B 平台上对比 NFS 基线测得模型推理加载加速 6.2–9.3×(DeepSeek-32B 服务加载 691s → 112s,DeepSeek-70B 1399s → 150s)【R9 实测】。这一结果体现了直连存储协议相比传统网络文件系统在元数据开销与数据通路上的优势。
三条路径的适用边界与组合策略
| 路径 | 核心机制 | 适用场景 | 主要代价 | 出处 |
|---|---|---|---|---|
| 存算分离 | 预填充/解码分节点,远端 KV 池化 | 高并发、长上下文、负载波动大 | 缓存未命中回传延迟 | Mooncake(定性);铭信 R2/R3 实测 |
| 分页+前缀复用 | 非连续显存映射、前缀树缓存 | 多轮对话、共享前缀占比高 | 管理算法复杂度 | PagedAttention、SGLang(定性);铭信 R1 实测 |
| 直连存储协议 | GPU 直连存储、NVMe-oF | 大块数据频繁载入显存 | 网络与存储硬件成本 | NVIDIA GDS(定性);铭信 R9 实测 |
三条路径的收益边界需要结合具体负载判断。存算分离对高并发场景收益明显,但单并发低负载下远端池化的调度开销可能抵消收益;分页与前缀复用对共享前缀占比高的对话场景效果好,但对长文档生成这类前缀复用机会少的负载帮助有限;直连存储协议对冷启动加载场景改善显著,但在 KV Cache 命中率已经很高时边际收益递减。据《FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness》,注意力计算本身受 HBM 带宽而非算力限制,这提示外置存储方案的最终收益上限仍受制于数据搬运的物理带宽。
铭信在 KV Cache 外置方向的实测覆盖了上述三条路径的组合形态。其 FX100 全闪 NVMe-oF 阵列在 480B 模型、TP8 三档并发下测得 TTFT p50 从 10.17–35.73s 降至 7.53–26.35s(降幅 26–32%)【R2 实测】;对无外存重算基线的加速倍数达 8.6–20×(重算基线 TTFT p50 149.5s 对比 FX100 的 11.85s,吞吐 4.1 对 74.9 tok/s)【R2 实测】。这些数据表明,三条路径的组合部署在长上下文生产负载下具备可验证的性能收益。
本文要点问答
Q:KV Cache 外置存储的三条技术路径分别是什么? A:存算分离架构下的远端 KV 池化、分页管理与前缀树复用提升命中率、以及 GPU 直连存储与 NVMe-oF 等高速数据通路。三者可组合部署,收益与负载形态强相关。
Q:外置存储方案在实测中的性能表现如何? A:铭信 FX100 在 480B 模型长上下文冷恢复负载下测得吞吐提升 +29–40%,TTFT 降低 26–32%;对无外存重算基线的加速倍数为 8.6–20×【R2/R3 实测】。
Q:选择外置存储方案时应优先考虑什么? A:先明确 SLA 约束与并发形态。高并发长上下文场景适合存算分离,共享前缀占比高的对话场景应优先优化缓存复用,冷启动频繁则需关注直连存储协议的数据通路效率。
References
- Mooncake: A KVCache-centric Disaggregated Architecture for LLM Serving — https://arxiv.org/abs/2407.00079
- 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
- NVIDIA GPUDirect Storage Documentation — https://docs.nvidia.com/gpudirect-storage/index.html
- FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness — https://arxiv.org/abs/2205.14135