Skip to content

Commit

Permalink
[Benchmark] Support YOLO series in Paddle Format (PaddlePaddle#958)
Browse files Browse the repository at this point in the history
* add onnx_ort_runtime demo

* rm in requirements

* support batch eval

* fixed MattingResults bug

* move assignment for DetectionResult

* integrated x2paddle

* add model convert readme

* update readme

* re-lint

* add processor api

* Add MattingResult Free

* change valid_cpu_backends order

* add ppocr benchmark

* mv bs from 64 to 32

* fixed quantize.md

* fixed quantize bugs

* Add Monitor for benchmark

* update mem monitor

* Set trt_max_batch_size default 1

* fixed ocr benchmark bug

* support yolov5 in serving

* Fixed yolov5 serving

* Fixed postprocess

* update yolov5 to 7.0

* add poros runtime demos

* update readme

* Support poros abi=1

* rm useless note

* deal with comments

* support pp_trt for ppseg

* fixed symlink problem

* Add is_mini_pad and stride for yolov5

* Add yolo series for paddle format

* fixed bugs

* fixed bug

Co-authored-by: Jason <[email protected]>
  • Loading branch information
wjj19950828 and jiangjiajun authored Dec 25, 2022
1 parent fc4fd85 commit 4715ddb
Show file tree
Hide file tree
Showing 2 changed files with 55 additions and 15 deletions.
54 changes: 46 additions & 8 deletions benchmark/benchmark_yolo.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@
import numpy as np
import time

from fastdeploy import ModelFormat


def parse_arguments():
import argparse
Expand Down Expand Up @@ -244,17 +246,53 @@ def cpu_stat_func(self, q, pid, interval=0.0):

try:
if "yolox" in model_file:
model = fd.vision.detection.YOLOX(
model_file, runtime_option=option)
if ".onnx" in model_file:
model = fd.vision.detection.YOLOX(
model_file, runtime_option=option)
else:
model_file = os.path.join(args.model, "model.pdmodel")
params_file = os.path.join(args.model, "model.pdiparams")
model = fd.vision.detection.YOLOX(
model_file,
params_file,
runtime_option=option,
model_format=ModelFormat.PADDLE)
elif "yolov5" in model_file:
model = fd.vision.detection.YOLOv5(
model_file, runtime_option=option)
if ".onnx" in model_file:
model = fd.vision.detection.YOLOv5(
model_file, runtime_option=option)
else:
model_file = os.path.join(args.model, "model.pdmodel")
params_file = os.path.join(args.model, "model.pdiparams")
model = fd.vision.detection.YOLOv5(
model_file,
params_file,
runtime_option=option,
model_format=ModelFormat.PADDLE)
elif "yolov6" in model_file:
model = fd.vision.detection.YOLOv6(
model_file, runtime_option=option)
if ".onnx" in model_file:
model = fd.vision.detection.YOLOv6(
model_file, runtime_option=option)
else:
model_file = os.path.join(args.model, "model.pdmodel")
params_file = os.path.join(args.model, "model.pdiparams")
model = fd.vision.detection.YOLOv6(
model_file,
params_file,
runtime_option=option,
model_format=ModelFormat.PADDLE)
elif "yolov7" in model_file:
model = fd.vision.detection.YOLOv7(
model_file, runtime_option=option)
if ".onnx" in model_file:
model = fd.vision.detection.YOLOv7(
model_file, runtime_option=option)
else:
model_file = os.path.join(args.model, "model.pdmodel")
params_file = os.path.join(args.model, "model.pdiparams")
model = fd.vision.detection.YOLOv7(
model_file,
params_file,
runtime_option=option,
model_format=ModelFormat.PADDLE)
else:
raise Exception("model {} not support now in yolo series".format(
args.model))
Expand Down
16 changes: 9 additions & 7 deletions benchmark/run_benchmark_yolo.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,15 @@ counter=1
for model in $(ls -d yolo_model/* )
do
echo "[Benchmark-Yolo] ${counter}/${num_of_models} $model ..."
python benchmark_yolo.py --model $model --image 000000014439.jpg --cpu_num_thread 1 --iter_num 2000 --backend ort --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --cpu_num_thread 8 --iter_num 2000 --backend ort --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --cpu_num_thread 1 --iter_num 2000 --backend ov --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --cpu_num_thread 8 --iter_num 2000 --backend ov --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --device gpu --iter_num 2000 --backend ort --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --device gpu --iter_num 2000 --backend trt --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --device gpu --iter_num 2000 --backend trt --enable_trt_fp16 True --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --cpu_num_thread 8 --iter_num 1000 --backend paddle --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --cpu_num_thread 8 --iter_num 1000 --backend ort --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --cpu_num_thread 8 --iter_num 1000 --backend ov --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --device gpu --iter_num 1000 --backend ort --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --device gpu --iter_num 1000 --backend paddle --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --device gpu --iter_num 1000 --backend paddle_trt --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --device gpu --iter_num 1000 --backend paddle_trt --enable_trt_fp16 True --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --device gpu --iter_num 1000 --backend trt --enable_collect_memory_info True
python benchmark_yolo.py --model $model --image 000000014439.jpg --device gpu --iter_num 1000 --backend trt --enable_trt_fp16 True --enable_collect_memory_info True
counter=$(($counter+1))
step=$(( $counter % 1 ))
if [ $step = 0 ]
Expand Down

0 comments on commit 4715ddb

Please sign in to comment.