推理框架对比 2026:vLLM / SGLang / TensorRT-LLM 及其他
1. 框架全景
2026 年 LLM 推理框架已形成明确的分层生态:
- Serving 系统:vLLM, SGLang, TensorRT-LLM, LMDeploy, TGI — 完整的请求调度 + 模型执行
- Kernel 库:FlashInfer, FlashAttention — 被上层框架调用的高性能算子
- 轻量级运行时:llama.cpp — 单机/边缘/CPU 部署
- Offload 系统:DeepSpeed/FlexGen — GPU-CPU-NVMe 三级存储
2. vLLM
| 维度 | 详情 |
|---|---|
| 核心优化 | PagedAttention (block KV 管理), Continuous Batching, Prefix Caching |
| 并行方式 | TP, PP, DP (多实例) |
| 量化格式 | FP8 (E4M3), GPTQ, AWQ, SqueezeLLM, Marlin |
| MoE 支持 | Mixtral/DeepSeek-V2/V3, Grouped GEMM via Triton |
| KV cache | PagedAttention blocks, 可配置 block_size |
模拟器启发:PagedAttention 的 internal fragmentation = ceil(seq/block_size) x block_size。实际利用率取决于 seq_len 分布。
注意:vLLM 对 DeepSeek-V4-Pro 的 CSA/HCA/FP4 支持截至 2026-05 可能仍在开发中。
3. SGLang
| 维度 | 详情 |
|---|---|
| 核心优化 | RadixAttention (自动 prefix sharing), Chunked Prefill, FlashInfer 后端 |
| 并行方式 | TP, DP, EP (DeepSeek 专用) |
| 量化格式 | FP8, AWQ, GPTQ |
| MoE 支持 | DeepSeek-V2/V3, 集成 DeepEP |
| KV cache | RadixTree + PagedKV (FlashInfer) |
核心优势:最早 day-1 支持 DeepSeek-V3/R1,RadixAttention 在多轮对话/共享 system prompt 场景下 cache hit rate 显著高于 PagedAttention。
模拟器启发:RadixAttention cache hit rate 是 workload-specific 的,需要实际 profiling 而非硬编码。
4. TensorRT-LLM
| 维度 | 详情 |
|---|---|
| 核心优化 | 静态图优化, kernel fusion, FP8/FP4 native, in-flight batching |
| 并行方式 | TP, PP, EP |
| 量化格式 | FP8, FP4 (NVFP4, Blackwell), INT4/INT8, SmoothQuant |
| MoE 支持 | Mixtral/DeepSeek, custom all-to-all |
| KV cache | Paged KV cache, KV quantization (FP8/INT8) |
核心优势:NVIDIA 官方优化,对 Blackwell (B200) FP4 native 支持最成熟。静态图编译带来的 kernel fusion 在稳定负载下性能最优。
模拟器启发:静态分配模式下 KV cache 预分配 = max_batch x max_seq x kv_size,比动态分配更浪费但延迟更稳定。
5. FlashInfer
| 维度 | 详情 |
|---|---|
| 核心优化 | Fused PagedKV attention kernel, composable operators, JIT compilation |
| 角色 | Attention 内核库(被 SGLang/vLLM 调用),非独立 serving 系统 |
| KV cache | Ragged tensor / Paged KV,灵活 layout |
模拟器启发:block_size 对 kernel 效率影响大 — 太小导致 launch overhead,太大导致内存浪费。最优 block_size 需要 benchmark。
6. LMDeploy
| 维度 | 详情 |
|---|---|
| 核心优化 | TurboMind engine (C++ backend), persistent batch, KV quantization |
| 并行方式 | TP |
| 量化格式 | W4A16 (AWQ), W8A8, KV INT8 |
| MoE 支持 | 有限(Mixtral 支持,DeepSeek MoE 待验证) |
模拟器启发:KV INT8 量化的精度-显存权衡是可配置参数,不同任务对 KV 精度敏感度不同。
7. Hugging Face TGI
| 维度 | 详情 |
|---|---|
| 核心优化 | Flash-Attention, continuous batching, Rust router |
| 并行方式 | TP (sharding) |
| 量化格式 | GPTQ, AWQ, bitsandbytes (NF4), EETQ (FP8) |
| MoE 支持 | Mixtral/DeepSeek-V2 |
模拟器启发:最保守的 KV 预分配策略,影响 max_batch 估算。适合作为 baseline 对比。
8. llama.cpp / GGML
| 维度 | 详情 |
|---|---|
| 核心优化 | 极致量化 (Q2-Q8), CPU/Metal/CUDA 多后端, 单文件部署 |
| 并行方式 | 线程级并行,无 TP/PP |
| 量化格式 | GGUF 全系列 (Q2_K - Q8_0, F16, F32) |
| MoE 支持 | Mixtral/DeepSeek-V2 (expert offload 到 CPU) |
模拟器启发:单卡/CPU 场景的 baseline;expert offload 延迟可做参照(PCIe 带宽瓶颈的直观体现)。
9. DeepSpeed Inference / FlexGen
| 维度 | 详情 |
|---|---|
| 核心优化 | GPU-CPU-NVMe 三级 offload, 极大 batch offline 推理 |
| 并行方式 | TP + offload pipeline |
| 量化格式 | INT8/INT4 weight only |
| MoE 支持 | DeepSpeed-MoE 有专用 kernel |
模拟器启发:offload 场景需建模 PCIe/NVMe 带宽 x 延迟。适合离线批量推理而非实时服务。
10. 对比总结
| 框架 | FP4 支持 | EP 支持 | DeepSeek-V4 就绪 | 最佳场景 |
|---|---|---|---|---|
| vLLM | 开发中 | 有限 | 部分 | 通用 serving |
| SGLang | via DeepEP | DeepEP | Day-1 | DeepSeek 系列 |
| TensorRT-LLM | NVFP4 native | 自研 | 社区 | NVIDIA 硬件最优 |
| FlashInfer | N/A (kernel) | N/A | N/A | 底层算子 |
| LMDeploy | 无 | 无 | 不支持 | 轻量 TP 部署 |
| TGI | 无 | 无 | 不支持 | HF 生态快速启动 |
| llama.cpp | GGUF Q4 | 无 | 不支持 | 单机/边缘 |
| DeepSpeed | 无 | MoE kernel | 不支持 | Offload 批量 |
11. 与其他主题的关联
- PagedAttention 与 KV cache 管理详见 KV Cache 推理性能
- EP/DeepEP 的 MoE 调度机制详见 MoE 推理
- FP4/FP8 量化格式的框架兼容性详见 FP4/FP8 量化
- 框架选型对模拟器参数的影响详见 模拟器建模指南
← 被以下页面引用(4)
- 模拟器建模指南:显存与吞吐公式ai-systems · synthesis
- FP4/FP8 量化:低精度推理的存储与计算ai-systems · synthesis
- MoE 推理:Expert 并行与调度机制ai-systems · synthesis
- FT vs VLLM vs SGLang 推理框架对比摘要ai-systems · source-summary
修改历史
修改历史1 次提交
- feat(wiki): ingest 4 raw articles + split inference survey into 5 pagesxiaocheng··
0521533