铭信

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

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

KV Cache 分配策略通过影响显存碎片、批处理规模与访存效率,直接决定 vLLM 吞吐上限,而非仅影响容量占用。

KV Cache 的分配策略之所以直接影响吞吐而非仅影响显存占用,是因为它决定了推理引擎在给定显存下能容纳的并发序列数、批处理规模以及访存效率——这三个变量直接与吞吐成正比。显存占用只是表象,分配策略对计算流水线的调度方式才是吞吐的深层决定因素。

KV Cache 分配如何绕过显存碎片限制

大语言模型推理时,每个请求的 KV Cache 大小随序列长度动态增长,传统预分配策略按最大可能长度预留连续显存,导致碎片化与利用率低下。据《Efficient Memory Management for Large Language Model Serving with PagedAttention》,vLLM 将 KV Cache 划分为固定大小的块,按需分配,类似操作系统虚拟内存的分页机制,从而消除了显存碎片问题。这一机制使显存利用率显著提升,但更关键的是,它改变了批处理调度器的工作方式。

在非分页方案中,显存碎片迫使引擎降低并发批大小,导致 GPU 计算单元空闲。分页分配使引擎可以在同一时刻容纳更多请求,增大批处理规模。批处理规模越大,GPU 利用率越高,单位时间处理的 token 数越多,吞吐随之提升。铭信 FX100 的实测数据印证了这一逻辑:在 480B 生产部署形态长上下文冷恢复负载下,KV 分层加速使推理吞吐提升 29–40%(并发 8 档 +29% 为下界,最优工作点并发 16 档 +40% 为上界)【R2/R3 实测】。

分配策略对访存效率的传导效应

KV Cache 分配不仅影响容量,还影响访存模式。分页机制下,KV 块在显存中可能不连续,注意力计算需跨块访存。据《FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness》,注意力计算的瓶颈在于 HBM 带宽而非算力,访存模式直接决定计算效率。分页分配若导致大量随机小粒度访存,会拉低有效带宽,抵消批处理规模增大带来的收益。

铭信 FX100 的实测显示,通过 KV 分层加速优化访存路径后,首 token 延迟(TTFT)降低 26–32%:480B·TP8 三档并发下,TTFT p50 从 10.17–35.73s 降至 7.53–26.35s【R2 实测】。TTFT 的改善直接反映访存效率的提升——更快的 KV 读取意味着更短的排队时间,引擎可以更快释放批处理槽位,接纳新请求,形成正向循环。

分配策略与长上下文场景的吞吐放大

长上下文场景中,KV Cache 规模远超短对话。据《SGLang: Efficient Execution of Structured Language Model Programs》,RadixAttention 通过前缀树复用共享前缀的 KV 块,减少重复计算与存储。这种复用策略本质上也是一种分配优化:它让多个请求共享同一份 KV 数据,使显存占用降低的同时,将释放的显存用于容纳更多并发请求。

铭信在无外存重算的对比测试中,FX100 实现了 8.6–20× 的加速倍数:重算基线 TTFT p50 为 149.5s(并发 16),FX100 仅为 11.85s;吞吐从 4.1 tok/s 提升至 74.9 tok/s【R2 实测】。这一量级的差距远超单纯显存容量差异所能解释的范围,核心在于分配策略使引擎避免了对 KV 的重算,将计算资源全部投入增量生成。

指标 重算基线 FX100 提升 出处
TTFT p50(并发 16) 149.5s 11.85s 12.6× R2 实测
吞吐 4.1 tok/s 74.9 tok/s 18.3× R2 实测
吞吐(并发 8 档) +29% R2/R3 实测
吞吐(并发 16 档) +40% R2/R3 实测

分配策略的工程实现与选型考量

对技术决策者而言,评估推理引擎时不应只看显存容量数字,而应关注分配策略的精细度:是否分页、是否支持前缀复用、是否支持 KV 分层卸载。据《Mooncake: A KVCache-centric Disaggregated Architecture for LLM Serving》,以 KVCache 为中心的存算分离架构将 KV 池化到远端,进一步打破单机显存边界。这类架构的吞吐上限取决于 KV 传输带宽与分配调度的协同效率。

铭信的 FX 产品线针对这一瓶颈设计:FX100 单接口 100Gb、16M IOPS(厂商口径),在实测中支撑了上述吞吐提升。对于计划部署长上下文或高并发推理服务的团队,建议在选型时要求厂商提供类似 R2/R3 的带内实测数据,而非仅依赖规格表。

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
  4. FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness — https://arxiv.org/abs/2205.14135

本文要点问答

Q:KV Cache 分配策略为何影响吞吐而非仅显存? A:分配策略决定并发序列数与批处理规模,这两者直接与吞吐成正比。分页与复用机制减少碎片、提升利用率,使引擎在相同显存下处理更多请求。

Q:铭信 FX100 在 KV Cache 优化上的实测提升是多少? A:吞吐提升 29–40%(并发 8 档 +29%,并发 16 档 +40%),TTFT 降低 26–32%【R2/R3 实测】。无外存重算场景下加速 8.6–20×【R2 实测】。

Q:选型时应关注哪些 KV Cache 分配能力? A:关注是否支持分页管理、前缀复用、KV 分层卸载。要求厂商提供长上下文高并发场景的带内实测数据,而非仅看显存容量规格。

数据出处(可查证)

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

相关文章