---
title: 性能测试方法
description: "使用“vllm/benchmarks/benchmark_serving.py”文件进行吞吐量性能测试。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengai/tuningguide/imog_a800ia2/kunpengai_800i_05_0006.html
sourcePath: /source/zh/kunpengai/tuningguide/imog_a800ia2/kunpengai_800i_05_0006.html
indexId: fd7499b1b6d7861fc67ad3f8802cdb7dfdc96b9e91d454e05a7faf149ca231fd73
---
# 性能测试方法

使用“vllm/benchmarks/benchmark_serving.py”文件进行吞吐量性能测试。

#### 性能测试方法示例

1. 在任意路径启动vLLM服务，如果需要添加优化请在启动服务前添加。

```
vllm serve /home/models/DeepSeek-R1-Distill-Llama-70B/ --tensor_parallel_size=8
```


2. 进入benchmark_serving.py测试文件所在路径“vllm/benchmarks/”。
3. 执行以下命令进行性能测试。命令参数说明如表1所示。

```
pip install datasets pandas
python benchmark_serving.py --model /home/models/DeepSeek-R1-Distill-Llama-70B/  --dataset_name random --random-input-len 2048 --random-output-len 2048 --trust-remote-code --ignore-eos --num-prompts 1 --request_rate 1
```


**表1 性能测试命令参数说明**

| 参数 | 说明 |
| --- | --- |
| \-\-model /home/models/DeepSeek\-R1\-Distill\-Llama\-70B/ | 模型路径。 |
| \-\-dataset\_name random | 选择随机数据集。 |
| \-\-random\-input\-len 2048 | 输入token长度为2048。 |
| \-\-random\-output\-len 2048 | 输出token长度为2048。 |
| \-\-ignore\-eos | 忽略终止符，即输出到指定输出长度才停止。 |
| \-\-num\-prompts 1 | 执行测试时发送的prompt数量为1。 |
| \-\-request\_rate 1 | 执行测试时发送请求的速率为1。 |


  测试输出结果类似下图，指标含义如表2所示。可主要通过TPOT（去除首token的耗时）进行优化前后的性能比较。

**表2 测试输出结果指标说明**

| 指标 | 说明 |
| --- | --- |
| Successful requests | 成功完成的请求数量。 |
| Benchmark duration (s) | 基准测试持续的时间。 |
| Total input tokens | 总输入token数，即所有请求中的输入token总数。 |
| Total generated tokens | 总生成的token数，即所有请求生成的输出token总数。 |
| Request throughput (req/s) | 请求吞吐量，表示每秒钟可以处理的请求数。 |
| Output token throughput (tok/s) | 输出token吞吐量，指的是每秒钟生成的输出token数量。 |
| Total Token throughput (tok/s) | 总token吞吐量（包括输入和输出），指的是每秒钟处理的总token数。 |
| Time to First Token | 首个令牌生成时间，从请求发出到收到第一个输出token所需的时间。 |
| Time per Output Token (excl. 1st token) | 每个输出token生成时间（不包括第一个令牌）。 |
| Inter\-token Latency | 连续两个token之间的延迟。 |
