Files
zhang-prog 4c2ad15258 add paddleocr_vl benchmark (#4833)
* add paddleocr_vl benchmark

* fix

* fix

* fix

* fix
2025-11-05 19:37:45 +08:00
..
2025-11-05 19:37:45 +08:00

FastDeploy 服务化性能压测工具PaddleOCR-VL

本文档主要介绍如何对 PaddleOCR-VL 进行性能测试。

数据集:

下载数据集到本地用于性能测试:

数据集 获取地址
OmniDocBench v1 数据集,共 981 个 pdf 文件 https://github.com/opendatalab/OmniDocBench

使用方式

  1. 启动 FastDeploy 服务,下面为 A100-80G 测试时使用的参数,可以根据实际情况进行调整:

    python -m fastdeploy.entrypoints.openai.api_server \
            --model PaddlePaddle/PaddleOCR-VL \
            --port 8118 \
            --metrics-port 8471 \
            --engine-worker-queue-port 8472 \
            --cache-queue-port 55660 \
            --max-model-len 16384 \
            --max-num-batched-tokens 16384 \
            --gpu-memory-utilization 0.7 \
            --max-num-seqs 256 \
            --workers 2 \
            --graph-optimization-config '{"graph_opt_level":0, "use_cudagraph":true}'
    
  2. 在同一环境安装依赖后启动测试脚本:

    # 安装依赖
    pip install -U paddlex
    # 启动测试脚本
    python benchmark.py ./test_data -b 512 -o ./benchmark.json --paddlex_config_path ./PaddleOCR-VL.yaml --gpu_ids 0
    

    测试脚本参数说明:

    参数 说明
    input_dirs 输入的目录路径,会自动识别到目录下的 pdf 或图片。可以提供一个或多个。
    -b, --batch_size 推理时使用的批处理大小。
    -o, --output_path 输出结果文件的路径。
    --paddlex_config_path PaddleX 的 YAML 配置文件路径。
    --gpu_ids 指定要使用的 GPU 设备 ID可提供一个或多个。
  3. 测试结束后,会输出类似于下面的结果:

    Throughput (file): 1.3961 files per second
    Average latency (batch): 351.0812 seconds
    Processed pages: 981
    Throughput (page): 1.3961 pages per second
    Generated tokens: 1510337
    Throughput (token): 2149.5 tokens per second
    GPU utilization (%): 100.0, 0.0, 68.1
    GPU memory usage (MB): 77664.8, 58802.8, 74402.7
    

    输出结果说明:

    参数 说明
    Throughput (file) 每秒处理的文件数量
    Average latency (batch) 每批次处理的平均延迟时间,单位为秒
    Processed pages 已处理的页面总数
    Throughput (page) 每秒处理的页面数量
    Generated tokens 生成的token总数
    Throughput (token) 每秒生成的token数量
    GPU utilization (%) GPU 的最大、最小、平均利用率
    GPU memory usage (MB) GPU 的最大、最小、平均显存占用,单位为 MB