---
title: 执行测试
description: "本文提供推理阶段性能测试方法，可以使用已经存在的模型文件直接进行推理阶段性能测试。"
url: https://www.hikunpeng.com/document/detail/zh/SRA/perfEval/benchmarksra/kunpengmodelzoo_06_0015.html
sourcePath: /source/zh/SRA/perfEval/benchmarksra/kunpengmodelzoo_06_0015.html
indexId: 9db9d871cdc7034de8543c43965670d76bf30163b0016471a42eb4dc052a4caf65
---
# 执行测试

本文提供推理阶段性能测试方法，可以使用已经存在的模型文件直接进行推理阶段性能测试。

#### 推理阶段性能测试

1. 进入ModelZoo所在路径。
  1 cd /path/to/sra_benchmark/modelzoo

2. 执行推理阶段性能测试命令，即可对Wide_and_Deep，DLRM，DeepFM，DFFM，DSSM五个模型进行推理阶段性能测试。
  1 python inference_throughput_test.py --test_method entire --meta_path /path/to/sra_benchmark --serving_path /path/to/tfserving --image nvcr.io/nvidia/tritonserver:24.05-py3-sdk --intra 0 --inter 0

  性能测试命令参数说明如表1所示。各模型推理时的吞吐量保存在“modelzoo”下“inference_log”文件夹中。

  部分模型性能测试结果保存的文件如下图所示。

  在整机4个NUMA的测试场景中，以DeepFM模型为例，测试结果按NUMA编号分别记录在“inference_log”文件夹下deepfm_client0.txt，deepfm_client1.txt，deepfm_client2.txt，deepfm_client3.txt中。若是单NUMA测试，则测试结果记录在“inference_log”文件夹下的deepfm_client0.txt中（因为限制使用NUMA0）。

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

| 参数名称 | 参数说明 |
| --- | --- |
| \-\-test\_method | 用于指定推理阶段时所用的NUMA资源。 single：使用单NUMA，限制为使用NUMA0。 entire：使用整台服务器的所有NUMA。默认使用整台服务器的所有NUMA。 |
| \-\-meta\_path | sra\_benchmark所在路径。 |
| \-\-serving\_path | 包含TensorFlow Serving可执行二进制文件的路径。 |
| \-\-image | 用于执行性能测试的TritonServer的容器名称及版本。 |
| \-\-intra | tensorflow\_intra\_op\_parallelism，表示TensorFlow所有算子中各个算子内并行线程数，默认为“0”。 |
| \-\-inter | tensorflow\_inter\_op\_parallelism，表示TensorFlow所有算子中各个算子间并行线程数，默认为“0”。 |


#### 测试结果说明

以DeepFM的推理性能测试结果为例，deepfm_client0.txt中的部分内容如图1所示。

图1 DeepFM模型推理性能测试结果示例图（结果存放于deepfm_client0.txt文件中）

- Concurrency：性能测试时客户端发送请求的并发数。
- throughput：吞吐量，单位为infer/sec，指每秒推理次数。
- latency：p99时延，单位为usec，指99%的请求延迟都低于此值。
