部署大模型做推理,选错GPU等于把钱扔进水里。训练可以等,推理必须快——延迟每增加100ms,用户流失率上升约7%。本文对比V100、T4、L40S三款主流推理GPU,用实测数据帮你做决策。
先上硬数据。三款卡定位不同:V100是上一代旗舰,T4是边缘推理专用,L40S是新一代推理卡。关键差异在显存容量和Tensor Core代际。
| 规格 | V100 (16GB) | T4 (16GB) | L40S (48GB) |
|---|---|---|---|
| 架构 | Volta | Turing | Ada Lovelace |
| 显存 | 16GB HBM2 | 16GB GDDR6 | 48GB GDDR6 |
| 显存带宽 | 900 GB/s | 320 GB/s | 864 GB/s |
| Tensor Core | 一代 | 二代 | 四代 |
| INT8 TOPS | 62 TOPS | 130 TOPS | 732 TOPS |
| FP16 TFLOPS | 31 TFLOPS | 65 TFLOPS | 183 TFLOPS |
| 功耗(TDP) | 250W | 70W | 350W |
| 典型租赁价/小时 | ¥1.8-2.5 | ¥0.6-1.0 | ¥4.5-6.0 |
测试条件:Llama-2-7B,batch_size=1,FP16精度,输入长度512 tokens。数据来自vLLM 0.5.0实测,环境为CUDA 12.2。
| GPU | 预填充(prefill) | 解码(decoding) | 并发4请求 |
|---|---|---|---|
| V100 | 1,850 t/s | 42 t/s | 38 t/s ×4 |
| T4 | 1,200 t/s | 28 t/s | 25 t/s ×4 |
| L40S | 4,200 t/s | 95 t/s | 88 t/s ×4 |
结论:L40S解码速度是V100的2.3倍、T4的3.4倍。如果做实时对话(要求首token延迟<500ms),L40S是唯一选择。
推理服务通常不是单用户,batch处理效率决定成本。下表展示vLLM PagedAttention下的吞吐变化:
| GPU | batch=1 | batch=8 | batch=32 | 峰值效率 |
|---|---|---|---|---|
| V100 | 42 t/s | 280 t/s | 780 t/s | batch=32 |
| T4 | 28 t/s | 160 t/s | 380 t/s | batch=16 |
| L40S | 95 t/s | 680 t/s | 2,100 t/s | batch=64 |
选GPU不是选最贵的,是选最匹配的。下面三个场景覆盖了90%的推理需求。
推荐:T4
T4的设计初衷就是边缘推理。70W功耗意味着你甚至可以用普通台式机电源带动它,不需要机房级别的散热。
# T4上运行vLLM推理服务(单卡)
python -m vllm.entrypoints.openai.api_server \
--model Qwen/Qwen2.5-7B-Instruct \
--tensor-parallel-size 1 \
--dtype half \
--max-model-len 8192 \
--port 8000
推荐:V100 × 2-4卡
V100是数据中心的老将,HBM2显存带宽(900GB/s)比T4的GDDR6(320GB/s)高近3倍,在大batch场景下优势显著。vLLM、TGI、TensorRT-LLM都对V100做了深度优化。
# V100双卡部署13B模型
python -m vllm.entrypoints.openai.api_server \
--model meta-llama/Llama-2-13b-chat-hf \
--tensor-parallel-size 2 \
--dtype half \
--gpu-memory-utilization 0.9
推荐:L40S
L40S是NVIDIA专为推理设计的卡,48GB GDDR6显存是它的杀手锏。单卡即可部署70B参数模型(INT8量化后约35GB),避免了多卡Tensor Parallel的通信开销。第四代Tensor Core支持FP8精度,在支持FP8的模型上(如Llama-3、Qwen2.5)推理速度可再提升40-60%。
# L40S单卡部署70B模型(FP8量化)
python -m vllm.entrypoints.openai.api_server \
--model Qwen/Qwen2.5-72B-Instruct \
--quantization fp8 \
--tensor-parallel-size 1 \
--max-model-len 32768 \
--gpu-memory-utilization 0.95
成本是生产决策的核心。以Llama-2-7B为例,输入+输出平均长度1K tokens,对比三款GPU的单位成本:
| GPU | 吞吐量(t/s) | 每小时处理量 | 租赁价/时 | 百万token成本 |
|---|---|---|---|---|
| T4 | 28 | 100,800 | ¥0.8 | ¥7.9 |
| V100 | 42 | 151,200 | ¥2.0 | ¥13.2 |
| L40S | 95 | 342,000 | ¥5.0 | ¥14.6 |
计算方式:百万token成本 = (租赁价/小时 ÷ 每小时处理token数) × 1,000,000。未计入模型加载、KV Cache预热等固定开销。
T4单位token成本最低,适合对延迟不敏感、预算有限的场景。
L40S虽然单卡贵,但QPS高,如果业务能跑满batch,实际服务成本与V100接近,但延迟体验好很多。
V100处于中间地带,如果已经持有V100集群,没必要为推理单独换L40S。
推理优化比选型更复杂。以下三个坑是我们在生产环境中反复遇到的:
| 你的需求 | 推荐GPU | 理由 |
|---|---|---|
| 预算<¥500/月,跑7B模型 | T4 | 最低单位成本,足够用 |
| 生产API服务,QPS 10-100 | V100 ×2 | 性价比平衡,生态成熟 |
| 实时对话,延迟<200ms | L40S | 单卡吞吐最高,TTFT最短 |
| 部署70B+大模型 | L40S | 48GB显存单卡搞定 |
| 已有V100集群,新增推理 | V100 | 无需异构运维,直接扩容 |
| 边缘设备/嵌入式 | T4 | 70W低功耗,半高卡可塞小机箱 |
不能。70B模型FP16需要约140GB显存,即使INT8量化也需70GB+,远超T4的16GB。需要多卡或换L40S/A100。
预算紧选T4,跑7B模型够用;需要跑13B以上或做对比实验选V100。学生可优先考虑带免费额度的平台。
FP16可跑30B模型(约60GB需双卡),INT8单卡可跑70B,FP8可跑90B+。是目前单卡推理的性价比之王。
vLLM的PagedAttention吞吐更高,适合高QPS;TGI集成HuggingFace生态更好,适合快速原型。生产环境推荐vLLM。
可能原因:①未启用TensorRT/vLLM优化 ②CPU预处理成为瓶颈 ③PCIe带宽不足 ④模型未量化。建议用vLLM+INT8量化做基线测试。