Python中测试paddle框架、onnxruntime与TensorRT的推理速度
- 项目在Ubuntu20.04上进行实验,显卡为3070,其余环境如下文所示;
- 本项目完整代码:Python中测试paddle框架、onnxruntime与TensorRT的推理速度。
1. 安装相关环境
包括paddlepaddle、paddle2onnx、onnxruntime、tensorRT和pycuda等等。
每次安装前查看版本,否则很多坑:
cuda版本查看指令
TensorRT查看版本
万事俱备,安装paddlepaddle
进入官 https://www.paddlepaddle.org.cn/,找到相关版本安装
参考:https://www.paddlepaddle.org.cn/documentation/docs/zh/install/conda/linux-conda.html#anchor-0
这里安装指令
安装paddle2onnx
github 官 :https://github.com/PaddlePaddle/Paddle2ONNX
安装onnxruntime
onnx文档:https://onnxruntime.ai/docs/execution-providers/TensorRT-ExecutionProvider.html
一定要查相关版本,如果有tensorRT,就按照tensorRT支持的版本安装,否则安装cuda和cudann版本安装
之前只看了cuda版本,安装onnxruntime1.13.1,运行时 错
错误:
后改成1.11.0就可以了
安装tensorRT
参考:https://blog.csdn.net/qq_27370437/article/details/124945605pm=1001.2014.3001.5506
验证tensorRT是否成功
安装pycuda(Python中使用tensorRT)
参考:https://blog.csdn.net/qq_41910905/article/details/109650182
其他相关库直接pip就行
2. 准备数据
本人做医学分割的,因此用医学数据与自己的搭建的 络做下部署。这里做了下数据读取与归一化。
3.准备相关的模型
导出onnx文件,paddle内置paddle.onnx.export函数,直接导出文件,函数API可去官 查看。
4.测试onnxruntime
onnxruntime推理过程可以参考:https://zhuanlan.zhihu.com/p/346544539
第一次推理时因为要构造模型,所以速度较慢,需要warm up一下
5. 测试飞浆框架的速度
这里就直接生成模型加载权重就好了,之后对比下预测的精度。
6. 查看onnx信息
可以通过onnx库查看onnx文件信息,详情可以参考博客:https://blog.csdn.net/u011622208/article/details/122260965
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!