使用trtexec工具多batch推理tensorrt模型(trt模型)

文章目录

  • 零、pt转onnx模型
  • 一、onnx转trt模型
  • 二、推理trt模型

零、pt转onnx模型

参考:https://github.com/ultralytics/yolov5
用根目录下的export.py可以转pt为onnx模型,命令如下可以转换成动态batch的onnx模型

python3 export.py --weights=./yolov5s.pt --dynamic

工具来源,接上一篇安装TensorRT:
/XXX/TensorRT-XXX/bin
安装连接:https://developer.nvidia.com/nvidia-tensorrt-8x-download (有限GA版,稳定版)

注意:这里版本推荐TensorRT-8.4.2.4,这里很坑,往上可能可以,往下就不一定了!!

一、onnx转trt模型

这里直接取动态batch的onnx模型:https://gitee.com/monkeycc/yolov5/releases/tag/v6.0
使用trtexec工具多batch推理tensorrt模型(trt模型)_第1张图片

使用trtexec工具多batch推理tensorrt模型(trt模型)_第2张图片

./trtexec --onnx=/home/xiao/thomascai/data/model/yolov5s_batch.onnx --saveEngine=/home/xiao/thomascai/data/model/bakup/yolov5s_bs_4.trt --workspace=6000 --minShapes=images:1x3x640x640 --optShapes=images:4x3x640x640 --maxShapes=images:32x3x640x640

注意:

  • minShapes:表示最小的shape;
  • optShapes:表示最优的shape;
  • maxShapes:表示支持最大的shape
    其中的XXXShapes中images表示输入的name,参照上图。https://netron.app/

二、推理trt模型

./trtexec --loadEngine=/home/xiao/thomascai/data/model/bakup/yolov5s_bs_4.trt --batch=4 --warmUp=200 --iterations=2000

得到:
使用trtexec工具多batch推理tensorrt模型(trt模型)_第3张图片

注意:这里千万注意版本,笔者踩了很大的坑,这里用TensorRT-8.4.2.4是OK的,千万注意!!

参考:

  1. https://blog.csdn.net/m0_72734364/article/details/128758544?app_version=5.12.1&csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22128758544%22%2C%22source%22%3A%22m0_72734364%22%7D&utm_source=app
  2. https://developer.nvidia.com/zh-cn/blog/tensorrt-trtexec-cn/
  3. https://blog.51cto.com/u_15357586/3783947

你可能感兴趣的:(深度学习,tensorrt,trtexec,多batch,推理)