推理服务
分块 prefill
也称为 chunked prefill、分块预填充
先用大白话
分块 prefill 把长提示词分片读取,而不是一次性读完,这样其他用户在此期间仍能持续收到 token。
技术定义
分块 prefill 把提示词处理切分为固定大小的 token 分块,由调度器与正在进行的 decode 工作交错执行。
工程细节
不切分的 prefill 会占用加速器直到整条提示词处理完,所有正在流式输出的用户都得排在后面。切分之后调度器可以交替执行,让 decode 在分块之间继续推进。分块大小是一个调优旋钮:分块越大 prefill 效率越高,分块越小对 decode 的打断越少。
为什么重要
这项技术把某一个用户的首 token 问题,转换成对所有人来说小而平稳的开销,通常是更划算的取舍。提示词越长它越重要:单条不切分的十万 token prefill 足以让整套部署卡住。
如何在 InferenceX 中解读
分块大小属于测试配置的一部分,同一条曲线上不同点的取值也可能不同,因此吞吐量的跳变有可能来自重新调参而不是新硬件。长的 agentic 提示词让这个参数变得关键,而定长短提示词场景根本暴露不出这一点。
参考资料
在真实基准中理解这一概念
AgentX - InferenceXv3:CUDA 护城河在 agentic 推理中还站得住吗?
开源价值 300 万美元的数据集、100 万以上上下文长度、多轮、子智能体、95%+ KVCache 命中率、GB300 NVL72、MI355X、B200
InferenceX v2:NVIDIA Blackwell 对决 AMD 与 Hopper — 前身为 InferenceMAX
GB300 NVL72、MI355X、B200、H100、分离式推理、宽专家并行、大规模混合专家、SGLang、vLLM、TRTLLM
SGLang 0.5.6 在 B200 DeepSeek R1 FP4 上的表现:低并发下最高提升 1.8 倍
针对 DeepSeek V3 的分段 CUDA graph、统一事件循环和 JIT 内核将 8k/1k 吞吐量从 508 提升至 907 tok/s/GPU,使用相同的 16 GPU B200 资源池