往期相关文章:
vllm prefill 和 decode 的kernel代码解读
deepseek R1 不同推理引擎部署的吞吐简单记录:
使用benchmark脚本:https://github.com/sgl-project/sglang/blob/main/python/sglang/bench_serving.py
1、在两台 H800 上分别使用vllm和 sglang部署deepseek,跑 benchmark 看产出数据的性能:
每秒向server发4个请求,一共发960条请求,每条请求长2000个token,要求输出2000个token。
(这时sglang还不支持dp)
配置 | qps | input token/s | Output token/s | E2E均值/中位数(ms) | TTFT均值/中位数/p99分位(ms) | TPOT均值/中位数/p99分位(ms) | ITL均值/中位数/p99分位(ms) |
---|---|---|---|---|---|---|---|
vllm_0.7.2_两机 | 1.09 | 1103.64 | 1075.78 | 367757.72/379839.38 | 184617.36/195902.60/455122.99 | 195.03/190.85/357.03 | 187.69/156.33/586.61 |
sglang两机 | 0.67 | 675.63 | 658.57 | 582352.85/589923.39 | 297396.49/319688.85/715794.45 | 311.18/288.19/828.12 | 290.12/248.61/835.41 |
2、在一台H20上分别使用vllm和 sglang部署deepseek,跑 benchmark 看产出数据的性能:
总输入token:49851,总输出2574919,总请求数:500,平均输入token:99.7,平均输出token:5149.8,瞬间把500条请求打过去
后端 | 配置(tp-pp) | qps | input token/s | Output token/s | E2E均值/中位数(ms) | TTFT均值/中位数/(ms) | TPOT均值/中位数(ms) | ITL均值/中位数(ms) |
---|---|---|---|---|---|---|---|---|
sglang | tp=8 | 0.17 | 16.98 | 876.83 | 1710813.62/1768756.35 | 564953.54/419441.76 | 231.00/179.63 | 222.66/160.13 |
tp8+dp | 0.30 | 29.84 | 1541.31 | 1114222.53/1144923.91 | 10717.03/10949.87 | 212.49/215.73 | 214.32/219.45 | |
vllm0.7.2 | tp=8 | 0.10 | 10.13 | 523.37 | 2489494.11/2407268.89 | 1105337.01/3756.43 | 283.14/251.26 | 269.63/160.38 |