vLLM vs TensorRT-LLM vs SGLang:2026年推理引擎H100实测对比

选好了模型,接下来就是怎么跑的问题。2026年,vLLM、TensorRT-LLM和SGLang是生产环境里最重要的三个推理引擎,它们走了三条完全不同的技术路线。我们在同一台H100 80GB上,用Llama 3.3 70B FP8精度把三个引擎跑了一遍,数据都在这儿了。

测试环境

硬件是Spheron的H100 SXM5 80GB裸机实例。模型用的是 meta-llama/Llama-3.3-70B-Instruct,FP8量化后权重约70GB,刚好塞进80GB显存。三个框架分别用各自的最新版本:vLLM v0.18.0、TensorRT-LLM v1.2.0、SGLang v0.5.9。基准测试工具是异步Python客户端,用200条不同指令的prompt,平均输入512 token、固定输出256 token,在1、10、50、100并发四个等级下各跑3分钟。

吞吐量和首token延迟

先看数字。50并发下,vLLM跑到1850 tok/s,TensorRT-LLM是2100 tok/s,SGLang是1920 tok/s。TensorRT-LLM在高中低并发下都领先,差距在8%-13%之间。100并发时TensorRT-LLM冲到2780 tok/s,vLLM是2400 tok/s。这个差距在高并发场景下会直接影响单GPU能承载的用户数。

Prefill-Decode分离架构示意图

首token时间(TTFT)方面,TensorRT-LLM同样最优。100并发时p95是1280ms,vLLM是1450ms,相差170ms。在对话类应用里,这个差距用户能感知到。SGLang在独享前缀(shared prefix)场景下有额外优势——如果请求都带着同一个系统prompt,RadixAttention会把公共前缀的KV缓存起来,只算新的部分,TTFT会明显更好。但这次测试全用的独立prompt,所以SGLang的优势没有体现出来。

显存占用和冷启动

70B FP8模型在80GB H100上,三个框架的显存占用差异很小——空闲时71-74GB,100并发峰值78-79GB。真正值得注意的是冷启动时间:vLLM约62秒,SGLang约58秒,而TensorRT-LLM需要约28分钟做引擎编译。这个28分钟是它最大的坑——每次换模型版本都要重新编译。但编译是一次性的,编译完保存成二进制文件,后续启动只需90秒加载。蓝绿部署、零弹扩容、频繁更新模型的团队得把这个时间算进交付流程里。

小夏点评:TensorRT-LLM的编译时间确实让人又爱又恨。我们内部之前跑过一次70B的编译,28分钟,期间什么都干不了,后来学了乖——把编译放在CI/CD的夜间构建里,跑完push到registry,正式发布时直接拉镜像。但如果你团队没有成熟的MLOps流程,这个等待时间会成为障碍。

三个引擎各适合什么场景

vLLM:我的默认推荐。模型支持最广,几百种架构都在清单里,多模态模型(Qwen3-VL、InternVL3、LLaVA-Next这些)也都能跑。无需编译,冷启动62秒,OpenAI兼容API开箱即用。v0.18.0还把Ray从默认依赖里移出去了,单机部署更干净。短板是高中并发的吞吐量和TTFT p95比TensorRT-LLM稍差。

TensorRT-LLM:追求极致吞吐量的场景用它。编译后每个token的生成成本最低,TTFT p95也是三个里最好的。代价是28分钟的编译门槛和对单一模型的强绑定——它不是给经常换模型的团队设计的。另外支持的模型数量比vLLM少,部署pipeline也更复杂。

SGLang:工作负载有共享前缀时选它。Chatbot的系统prompt、RAG pipeline里的文档上下文、多轮对话的上下文——这些场景下RadixAttention复用KV缓存,能显著降低TTFT和计算成本。在纯独立prompt场景下,SGLang和vLLM的差距很小,选谁看团队熟悉程度。

推理引擎选型决策矩阵

选型决策矩阵

如果你的请求大量共享前缀(系统prompt、few-shot示例、RAG上下文),SGLang的RadixAttention能给你真实的加速,这个是其他两个引擎做不到的。如果每个请求都完全不同,vLLM是更稳妥的默认选项——生态最成熟、文档最全、换模型最灵活。只有在模型固定不变且吞吐量是核心指标时,才值得走TensorRT-LLM的编译流程。

小夏点评:实际项目中,我见过太多团队在选引擎上纠结了好几天。我的建议是:先跑一遍自己的真实流量,用prefix overlap比例来决策。如果60%以上的请求共享前缀,直接上SGLang;如果不到40%,vLLM足够。别花太多时间在纸面benchmark对比上,自己的流量特征才是关键。

结论

三个引擎没有绝对优劣,只有场景匹配。vLLM适合大多数团队,是最容易上手、生产迁移成本最低的选择。TensorRT-LLM适合模型稳定且对吞吐量有极致追求的规模化部署。SGLang适合有明确共享前缀特征的特定工作负载。在H100这样的单卡场景下,三个引擎的显存利用和绝对性能差距不大,真正的分水岭是冷启动时间、模型兼容性和工作负载的prefix特征。花时间测清楚自己的流量类型,比研究哪个引擎benchmark数字更高更有价值。

您可能还喜欢...

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注