KV Cache分层存储如何提升480B推理吞吐29-40%
铭信FX100实测显示,KV Cache分层存储可将480B模型推理吞吐提升29-40%,TTFT降低26-32%。本文拆解其技术原理与实测数据。
KV Cache 分层存储能够将 480B 级大模型的推理吞吐提升 29–40%,核心在于把注意力计算从“显存容量受限”中解放出来——通过把 KV Cache 按访问频度分层放置,让热数据留在显存、冷数据落到 NVMe 存储,从而在同等 GPU 显存下支持更长上下文与更高并发。铭信 FX100 在 480B 生产部署形态下实测吞吐提升 29–40%(R2/R3 实测),首 token 延迟(TTFT)降低 26–32%。本文基于铭信 R2/R3 实测报告,拆解这一提升的技术来源与适用边界。
为什么 KV Cache 是长上下文推理的瓶颈
大模型推理的吞吐瓶颈并不在算力,而在显存带宽与容量。据《FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness》,注意力计算本质受 HBM 带宽而非算力限制,访存优化因此成为收益最直接的优化方向。KV Cache 正是访存压力的核心来源:随着上下文长度与并发数增长,KV Cache 占用的显存呈线性膨胀,挤占了本可用于更大 batch 的显存空间。
据《Efficient Memory Management for Large Language Model Serving with PagedAttention》,KV Cache 的分页管理能缓解显存碎片问题,但并未改变“KV Cache 必须常驻显存”这一前提。当上下文极长(如 480B 模型的数十万 token 上下文)时,显存容量成为硬约束——要么降低并发,要么截断上下文,二者都直接损害吞吐与服务质量。
分层存储如何突破显存容量墙
铭信 FX100 的 KV Cache 分层方案,思路是把 KV Cache 从“显存独占”改为“显存 + 存储”的分层体系:高频访问的最近 token 保留在显存,低频或历史 token 按需换入换出到 NVMe 存储。这与《Mooncake: A KVCache-centric Disaggregated Architecture for LLM Serving》中提出的以 KVCache 为中心的存算分离思路同源——都是承认显存不是唯一可用的缓存介质,让存储参与缓存分层。
关键在于数据通路的效率。据 NVIDIA GPUDirect Storage Documentation,GPU 直连存储可绕过 CPU 内存拷贝,让 GPU 直接读写存储设备。铭信 FX100 基于 NVMe-oF 与 RoCEv2 构建全闪阵列,配合 LMCache 并行读补丁,实测单卡冷读盘场景下 TTFT 从 37.97s 降至 9.30s,带宽从 0.98 GB/s 提升至 5.23 GB/s(R1 实测)。这一数据说明,存储侧带宽已不再是不可接受的瓶颈——分层方案的可行性由此确立。
实测数据:29–40% 吞吐提升从哪来
铭信 FX100 在 8× AMD Instinct MI308X 平台(ROCm 7.2,vLLM 0.20.1+rocm721,LMCache 主线源码)上,以 Qwen3-Coder-480B-FP8(MoE,权重约 450GB)进行长上下文冷恢复负载测试。结果如下:
| 指标 | 并发 8 档 | 并发 16 档(最优) | TP4×2 全机口径 |
|---|---|---|---|
| 吞吐提升 | +29% | +40% | +35–36% |
| TTFT p50 降幅 | 26–32%(三档并发区间) | — | — |
| 出处 | R2/R3 实测 | R2/R3 实测 | R3 实测 |
TTFT 的具体数值变化:480B·TP8 三档并发下,TTFT p50 从 10.17–35.73s 降至 7.53–26.35s(R2 实测)。更直观的对比来自无外存重算基线:重算基线 TTFT p50 为 149.5s(并发 16),FX100 为 11.85s,加速 8.6–20 倍;吞吐从 4.1 tok/s 提升至 74.9 tok/s(R2 实测)。
这一提升的来源可拆为两层。第一层是“避免重算”——冷恢复场景下,若不使用分层存储,GPU 需重新计算历史 token 的 KV 值,这是纯算力浪费;分层存储直接读取已缓存的 KV,省去这部分计算。第二层是“提高显存利用率”——KV Cache 落盘后,显存释放给更大 batch,并发能力随之提升,吞吐因此获得接近线性的增长。
适用边界与选型判断
需要明确的是,29–40% 的提升并非普适常量,而是特定负载形态下的实测结果。其成立前提包括:长上下文(数十万 token 级)、冷恢复场景(缓存未命中后需从存储重建)、以及存储侧带宽足以支撑换入换出。对于短上下文、高命中率的在线推理,分层存储的收益会显著收窄——此时 KV Cache 本就常驻显存,存储介入反而增加路径延迟。
据 SGLang 论文中 RadixAttention 的机制描述,前缀树复用能在多轮对话与共享前缀场景下显著提高缓存命中率——这意味着在对话型负载中,分层存储的收益更多体现在“缓存容量扩大带来的命中率提升”,而非“避免重算”本身。选型时应先明确自身负载的上下文长度分布与并发形态,再判断分层存储是否适用。
铭信提供约 10 周门禁化联测(G1 到货验收 / G2 单机基线 / G3 主门禁:TTFT 降幅 ≥25%、吞吐 +29–40% 实测带内 / G4 72h 稳定性),不达标即止损;测算模型可在 NDA 后以 Python 复现。如需在自身负载上验证分层存储收益,可在联测中直接测量。
本文要点问答
Q:KV Cache 分层存储为什么能提升大模型推理吞吐? A:它把 KV Cache 从显存独占改为显存与存储的分层体系,释放显存给更大 batch,同时避免冷恢复场景下的重复计算。铭信 FX100 在 480B 长上下文负载下实测吞吐提升 29–40%(R2/R3 实测)。
Q:29–40% 的提升在什么条件下成立? A:适用于长上下文、冷恢复负载形态,且存储侧带宽需足以支撑换入换出。短上下文高命中率场景下收益会显著收窄,选型前应先明确自身负载特征。
Q:铭信 FX100 的实测数据来自什么平台? A:8× AMD Instinct MI308X(ROCm 7.2,vLLM 0.20.1+rocm721),Qwen3-Coder-480B-FP8 模型,测试报告编号 R2/R3(正式版)。
References
- Efficient Memory Management for Large Language Model Serving with PagedAttention — https://arxiv.org/abs/2309.06180
- Mooncake: A KVCache-centric Disaggregated Architecture for LLM Serving — https://arxiv.org/abs/2407.00079
- NVIDIA GPUDirect Storage Documentation — https://docs.nvidia.com/gpudirect-storage/index.html
- SGLang: Efficient Execution of Structured Language Model Programs — https://arxiv.org/abs/2312.07104
- FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness — https://arxiv.org/abs/2205.14135