铭信

KV Cache 预填充与解码阶段存储配置指南

发布KV Cache预填充解码存储配置
直接答案

预填充重带宽、解码重延迟,存储配置需分阶段设计。铭信 FX100 实测显示分层加速吞吐提升 29–40%。

KV Cache 的存储配置不应一刀切:预填充阶段与解码阶段对存储的需求截然不同,前者需要高带宽以快速写入海量 KV 数据,后者需要低延迟以保证逐 token 生成的响应速度。铭信 FX100 在 480B 生产部署形态长上下文冷恢复负载下的实测显示,分层加速可将推理吞吐提升 29–40%(R2/R3 实测),其关键在于针对两个阶段分别优化存储路径。本文基于铭信实测数据与公开架构研究,给出分阶段的存储配置方法。

预填充阶段:为什么带宽比延迟更关键

预填充(Prefill)阶段处理输入提示词,一次性计算并写入大量 KV Cache。这一阶段是存储写入的洪峰期,其核心矛盾在于带宽而非延迟。据《Efficient Memory Management for Large Language Model Serving with PagedAttention》(SOSP '23)所述,KV Cache 的显存管理直接制约吞吐上限,而预填充阶段的数据量决定了显存压力的峰值。

铭信 R2 实测中,480B 模型(MoE,权重约 450GB)在 TP8 三档并发下,无外存重算基线的 TTFT p50 高达 149.5s(并发 16 档),而接入 FX100 后降至 11.85s——这一数量级差异正源于预填充阶段存储带宽的瓶颈释放(R2 实测)。配置建议:

  • 存储介质:优先 NVMe-oF 全闪阵列,单盘带宽需覆盖模型并发写入峰值;
  • 队列深度:预填充阶段可适当提高并发写入队列深度,牺牲单次延迟换取整体带宽利用率;
  • 缓存策略:对共享前缀(如系统提示词、Few-shot 示例)启用前缀树复用。据《SGLang: Efficient Execution of Structured Language Model Programs》(arXiv:2312.07104),RadixAttention 机制可显著提升多轮对话与共享前缀场景的命中率,减少重复写入。

解码阶段:延迟敏感,带宽需求骤降

解码(Decode)阶段逐 token 生成输出,每次仅读取最新的 KV Cache 增量。这一阶段存储访问的特点是高频小数据量读取,延迟直接决定 TTFT 之后的 token 生成速度。铭信 R2 实测显示,首 token 延迟(TTFT)在优化后降低 26–32%,p50 从 10.17–35.73s 降至 7.53–26.35s(R2 实测)——这为解码阶段的稳定输出奠定了基础。

解码阶段存储配置的核心原则是避免为高带宽买单

  • 容量优先于带宽:解码阶段需要的是足够大的 KV Cache 容量以支撑长上下文,而非极致的读写带宽;
  • 本地化读取:将热 KV 数据尽量驻留 GPU 显存或本地 NVMe,减少跨节点访问。据《Mooncake: A KVCache-centric Disaggregated Architecture for LLM Serving》(arXiv:2407.00079),以 KVCache 为中心的存算分离架构通过前缀缓存复用与跨节点 KV 池化来平衡容量与延迟;
  • 预取机制:利用解码阶段的顺序访问特性,提前将下一批所需 KV 数据从远端存储预取至本地。

分层存储:一个配置满足两个阶段

单一存储配置难以同时满足预填充的高带宽与解码的低延迟需求,分层方案是更务实的选择。铭信 FX100 的 KV 分层加速设计即采用此思路:热层(显存/本地 NVMe)服务解码阶段,冷层(NVMe-oF 阵列)承接预填充写入与长上下文溢出。

阶段 存储需求特征 推荐配置 铭信实测效果 出处
预填充 高带宽写入、容量弹性 NVMe-oF 全闪阵列,多盘 RAID0 吞吐提升 29–40%(并发 8–16 档) R2/R3 实测
解码 低延迟读取、容量充足 本地 NVMe + 显存热层 TTFT 降低 26–32% R2 实测
冷恢复 快速加载完整 KV 状态 全闪阵列 + 并行读优化 对比无外存重算加速 8.6–20× R2 实测

铭信 R1 实测中,LMCache 并行读补丁在单卡并发 16 冷读盘场景(Qwen2.5-32B)下,TTFT 从 37.97s 降至 9.30s,带宽从 0.98 GB/s 提升至 5.23 GB/s(↑5.3×)(R1 实测)——这一数据说明,即便在冷恢复场景,存储侧的并行读优化也能带来数量级改善。

配置实践:从 SLA 反推存储参数

存储配置不应从硬件参数出发,而应从服务等级协议(SLA)反推。具体步骤:

  1. 确定并发档位与上下文长度:这决定了 KV Cache 的总容量需求与写入峰值带宽;
  2. 设定 TTFT 与吞吐目标:铭信联测门禁要求 TTFT 降幅 ≥25%、吞吐提升 29–40% 实测带内(约 10 周门禁化联测,G3 主门禁),可作为参考基准;
  3. 按阶段拆分存储预算:预填充阶段配置高带宽冷层,解码阶段配置低延迟热层,两者通过缓存策略联动;
  4. 验证冷恢复路径:长上下文场景下,冷恢复(如服务重启、实例迁移)的存储读取效率往往被忽视。铭信 R2 实测中,TP4×2 全机口径吞吐提升 35–36%(R3 实测),部分收益正来自冷恢复路径的优化。

需要指出的是,上述配置方法的前提是存储系统支持 NVMe-oF 等远程直接访问协议。据 NVIDIA GPUDirect Storage 文档,GPU 直连存储可绕过 CPU bounce buffer 缩短数据通路,但适用条件取决于 GPU 与存储系统的具体实现(NVIDIA 官方文档)。对于不支持直连的环境,需评估 CPU 中转带来的额外延迟。

本文要点问答

Q:预填充阶段存储配置的核心指标是什么? A:带宽优先于延迟。预填充阶段一次性写入大量 KV Cache,存储带宽决定 TTFT 下限。铭信 R2 实测显示,优化后 TTFT p50 从 149.5s 降至 11.85s(并发 16 档)。

Q:解码阶段存储配置应如何取舍? A:延迟敏感、带宽需求低。应配置低延迟本地热层(显存/本地 NVMe),避免为高带宽过度配置。配合前缀缓存复用机制可减少重复读取。

Q:如何验证存储配置是否达标? A:从 SLA 反推,设定 TTFT 与吞吐目标后分阶段验证。铭信联测门禁以 TTFT 降幅 ≥25%、吞吐提升 29–40% 为实测带内标准,冷恢复路径需单独测试。


铭信科技提供 FX100/FX200/FX300 系列存储加速产品,支持约 10 周门禁化联测(G1 到货验收 / G2 单机基线 / G3 主门禁 / G4 72h 稳定性),不达标即止损。如需验证特定负载下的分阶段存储配置,可在联测中直接测量。

References

  1. SGLang: Efficient Execution of Structured Language Model Programs — https://arxiv.org/abs/2312.07104
  2. Mooncake: A KVCache-centric Disaggregated Architecture for LLM Serving — https://arxiv.org/abs/2407.00079
  3. Efficient Memory Management for Large Language Model Serving with PagedAttention — https://arxiv.org/abs/2309.06180
  4. NVIDIA GPUDirect Storage Documentation — https://docs.nvidia.com/gpudirect-storage/index.html

数据出处(可查证)

R1FX100 大模型推理与训练 综合性能测试报告(AMD MI308X ×8)2026-07-03
下载报告 PDF ↓
R2FX100 KV Cache 性能测试报告(480B·TP8 长上下文·正式版)2026-07-05
下载报告 PDF ↓
R3FX100 KV Cache 性能测试汇总报告(480B·TP4×2·全指标·品牌统一版)2026-07-06
下载报告 PDF ↓
本文由铭信 AI 内容引擎生成并经自动质检;关键数字均注明出处(实测报告见证据库)。如需交流或指正,欢迎联系我们

相关文章