铭信

vLLM 的 KV Cache 分配策略为何决定吞吐而非仅显存

发布vLLMKV Cache显存分配吞吐
直接答案

KV Cache 的分配策略直接影响 vLLM 吞吐:从显存碎片、批处理调度到前缀复用,解析其性能传导机制与实测数据。

KV Cache 的分配策略对 vLLM 吞吐的影响,远不止于“显存够不够用”这一层。其核心机制在于:分配策略决定了显存碎片化程度与可用 KV Cache 总量,进而直接制约了推理引擎的单批并发度(batch size)与调度效率——这两者才是吞吐的最终决定因素。铭信 FX100 在 480B 模型长上下文负载下的实测显示,通过优化 KV 分层存储与访存路径,推理吞吐提升可达 29–40%(R2/R3 实测),印证了分配与访存路径优化对吞吐的显著杠杆作用。

显存分配如何传导至吞吐:从碎片到批处理调度

vLLM 的核心创新在于 PagedAttention 机制,它将 KV Cache 从连续显存块拆分为固定大小的分页(page),以此消除显存碎片并实现近乎零浪费的显存共享(据《Efficient Memory Management for Large Language Model Serving with PagedAttention》)。但分配策略的影响并未止步于显存利用率——它直接决定了推理引擎能在单个解码步骤中容纳多少并发序列。

在自回归解码中,吞吐与批大小近似线性相关:批越大,GPU 计算资源越饱和,单位时间产出的 token 越多。而批大小的上限,取决于可用 KV Cache 总量能否容纳所有活跃序列的 KV 张量。若分配策略导致碎片化或预留不足,引擎被迫缩小批大小,GPU 算力便出现空闲气泡,吞吐随之下降。

铭信 R2 实测中一个值得注意的现象是:在 480B·TP8 长上下文冷恢复负载下,吞吐提升呈现明显的并发依赖特征——并发 8 档时提升 29%(下界),而最优工作点并发 16 档时提升达 40%(上界)(R2/R3 实测)。这一非线性关系恰恰说明:当并发度提升时,KV Cache 的分配与访存效率成为瓶颈放大镜,优化分配策略带来的收益也随之放大。

首 token 延迟与吞吐的联动:分配策略的间接通道

KV Cache 分配策略还通过影响首 token 延迟(TTFT)间接作用于吞吐。在长上下文冷启动场景中,预填充阶段需要将历史 KV 从外部存储读入显存。若分配策略未能为预填充预留足够连续空间,或访存路径未做优化,TTFT 将急剧恶化——而 TTFT 是服务等级协议(SLA)的核心指标。

铭信 R2 实测数据显示,在 480B·TP8 三档并发下,TTFT p50 从基线(本地 NVMe 单盘)的 10.17–35.73 秒降至 7.53–26.35 秒,降幅 26–32%(R2 实测)。TTFT 的下降意味着同一 SLA 约束下,系统可以承受更高的并发压力而不违反延迟承诺——这等价于在不增加硬件的前提下提升了有效吞吐容量。

这一逻辑在无外存重算的极端场景中更为清晰:基线重算 TTFT p50 高达 149.5 秒(并发 16),而 FX100 仅需 11.85 秒,吞吐从 4.1 提升至 74.9 token/s(R2 实测)。当 KV 无需重算时,分配策略的优化直接消除了计算浪费,其吞吐杠杆远超常规的调度优化。

前缀复用与 KV 池化:分配策略的架构级延伸

分配策略的另一个吞吐杠杆在于前缀复用。SGLang 提出的 RadixAttention 机制通过前缀树组织 KV Cache,使多轮对话与共享文档前缀的 KV 可直接复用,避免重复计算(据《SGLang: Efficient Execution of Structured Language Model Programs》)。Mooncake 则进一步将 KVCache 从单卡显存中解耦,构建以 KVCache 为中心的存算分离架构,实现跨节点的 KV 池化与调度(据《Mooncake: A KVCache-centric Disaggregated Architecture for LLM Serving》)。

铭信 FX100 的 KV 分层加速方案与上述架构思路同源:通过将 KV Cache 分层放置在近存介质(全闪 NVMe-oF 阵列)而非仅依赖显存,配合高效的并行读取路径,在冷读盘场景下实现了可量化的收益。R1 实测显示,在单卡·并发 16·冷读盘(Qwen2.5-32B)负载下,LMCache 并行读补丁将 TTFT 从 37.97 秒降至 9.30 秒(4.1×),带宽从 0.98 提升至 5.23 GB/s(R1 实测)。这一提升的本质,是分配策略从“显存内静态分配”扩展为“跨存储层级动态调度”,使得 KV 的可用容量不再受单卡显存物理上限的约束。

分配策略的选型判据:从实测到决策

对于算力中心的技术决策者,KV Cache 分配策略的选型应关注三个层面:其一,引擎层是否采用分页管理以消除碎片(如 vLLM 的 PagedAttention);其二,是否支持前缀复用以降低重复计算(如 SGLang 的 RadixAttention);其三,是否具备 KV 分层卸载能力,使 KV 容量突破单卡显存边界。

铭信 FX100 在上述第三层面的实测数据可作为参考:在华为 Atlas 910B 平台上,模型推理加载(含 KV 初始化)相比 NFS 基线加速 6.2–9.3 倍——DeepSeek-32B 服务加载从 691 秒降至 112 秒,DeepSeek-70B 从 1399 秒降至 150 秒(R9 实测,昇腾平台)。训练侧 Checkpoint 保存亦有 1.9 倍加速(178 秒→94 秒,持续写带宽 3.26→6.40 GB/s)(R1 实测)。这些数据表明,存储介质的访存性能直接决定了 KV 分层方案的可行性边界。

本文要点问答

Q:KV Cache 分配策略为何影响吞吐而非仅显存占用? A:分配策略决定显存碎片化程度与可用 KV 总量,直接制约批处理并发度上限。并发度越低,GPU 算力空闲越多,吞吐越低。铭信 R2 实测显示,480B 长上下文负载下优化 KV 访存路径可带来 29–40% 的吞吐提升,且并发越高收益越显著。

Q:TTFT 与吞吐之间存在怎样的联动关系? A:TTFT 是 SLA 核心指标,TTFT 越低,系统在相同延迟约束下可承受的并发越高,等效吞吐容量越大。铭信 R2 实测中 TTFT p50 降低 26–32%,为提升并发压力下的有效吞吐提供了余量。

Q:KV 分层卸载对吞吐的价值如何验证? A:KV 分层使缓存容量突破单卡显存物理上限,但依赖存储介质的访存性能。铭信 R1 实测显示冷读盘场景下并行读补丁带来 TTFT 4.1 倍改善、带宽 5.3 倍提升;R9 昇腾平台实测显示模型加载加速 6.2–9.3 倍,验证了高速存储介质对 KV 分层方案的支撑能力。

References

  1. Efficient Memory Management for Large Language Model Serving with PagedAttention — https://arxiv.org/abs/2309.06180
  2. SGLang: Efficient Execution of Structured Language Model Programs — https://arxiv.org/abs/2312.07104
  3. Mooncake: A KVCache-centric Disaggregated Architecture for LLM Serving — https://arxiv.org/abs/2407.00079

铭信科技长期从事 KV Cache 分层加速与国产算力平台的联合测试,若您希望在自有集群上验证不同 KV 分配策略对吞吐的实际影响,可通过门禁化联测流程(约 10 周,含 TTFT 降幅与吞吐提升的带内实测)获取可复现的量化结论。

数据出处(可查证)

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 ↓
R9铭信 FX100-HBMM 与华为 910B 模型推理与训练性能测试(vs NFS 基线)2026-05-30
联系我们获取 →
本文由铭信 AI 内容引擎生成并经自动质检;关键数字均注明出处(实测报告见证据库)。如需交流或指正,欢迎联系我们

相关文章