
连续批处理:vLLM 高吞吐推理的核心技术
连续批处理:推理吞吐的范式革命 在 LLM 推理系统中,如何高效处理并发请求是决定服务成本的核心问题。连续批处理(Continuous Batching)配合 PagedAttention,让 vLLM 实现了比传统推理框架高 5-20 倍的吞吐量。本文深入解析这项技术的原理与工程实现。 一、批处理的演进 1.1 静态批处理(Static Batching) 最简单的批处理方式:等待凑齐一批请求,然后一起推理,直到所有请求完成。 ┌────────────────────────────────────────────────────┐ │ 静态批处理 │ ├────────────────────────────────────────────────────┤ │ │ │ 时间→ 0 1 2 3 4 5 6 7 │ │ │ │ Req1 [G][G][G][G][G][D] ✓ │ │ Req2 [G][G][G][G][G][G][G][G] ✓ │ │ Req3 [G][G][D] ✓ │ │ Req4 [G][G][G][G][G][G][G][D] ✓ │ │ │ │ G=生成, D=完成(停止生成) │ │ │ │ 问题: Req3 在 t=2 就完成了, │ │ 但要等 Req2 到 t=7 整批才结束 │ │ GPU 利用率: ~35% │ └────────────────────────────────────────────────────┘ 核心问题:Padding 浪费 + 等待浪费。不同请求长度差异大,短请求要等长请求完成。 ...








