tensorRT提供了C++及Python的API接口。
(一)安装Python版接口
linux安装较为简介,直接使用:
pip install tensorrt
pip install nvidia-pyindex
pip install nvidia-tensorrt
进行安装即可。
对于windows版本tensorRT:
登录英伟达官网下载对应版本的压缩包:
下载链接
下载后打开目录,在文件夹位置下:
D:\TensorRT-8.4.0.6.Windows10.x86_64.cuda-11.6.cudnn8.3\TensorRT-8.4.0.6\python
这里使用的是python3.9,所以使用的安装包是:
tensorrt-8.4.0.6-cp39-none-win_amd64.whl
1.在系统环境变量中新增:
D:\TensorRT-8.4.0.6.Windows10.x86_64.cuda-11.6.cudnn8.3\TensorRT-8.4.0.6\lib
2.安装graphsurgeon
D:\TensorRT-8.4.0.6.Windows10.x86_64.cuda-11.6.cudnn8.3\TensorRT-8.4.0.6\graphsurgeon> pi
p install graphsurgeon-0.4.5-py2.py3-none-any.whl
3.安装onnx_graphsurgeon
D:\TensorRT-8.4.0.6.Windows10.x86_64.cuda-11.6.cudnn8.3\TensorRT-8.4.0.6\onnx_graphsurgeo
n> pip install onnx_graphsurgeon-0.3.12-py2.py3-none-any.whl
4.安装 uff
D:\TensorRT-8.4.0.6.Windows10.x86_64.cuda-11.6.cudnn8.3\TensorRT-8.4.0.6\uff> pip install
uff-0.6.9-py2.py3-none-any.whl
5.安装tensorRT:
D:\TensorRT-8.4.0.6.Windows10.x86_64.cuda-11.6.cudnn8.3\TensorRT-8.4.0.6\python> pip inst
all tensorrt-8.4.0.6-cp39-none-win_amd64.whl
将lib文件夹下的dll文件复制进cudnn文件夹下。
import tensorrt as trt
print(trt.__version__)
输出错误信息:
Note: Paths searched were:
['D:\\anaconda\\envs\\mypytorch\\Lib\\site-packages\\cv2\\../../x64/vc14/bin', 'D:\\anaconda\\envs\\mypytorch'
选择其中一个路径,将libs文件夹下的若干dll,复制到其中一个目录。
至此安装完成。程序输出:
8.4.0.6
注:一般修改系统变量后,需重启IDE,如pycharm,可使系统变量生效。如果缺少dll,可用everything搜索工具进行检索,再将对应dll路径添加进系统变量内。
附:安装tensorRT所需的pycuda库:
找到合适的pycuda的版本:
下载后进行安装即可:
pip install D:\pycuda-2021.1+cuda115-cp39-cp39-win_amd64.whl
若出现类似:
RuntimeError: module compiled against numpy version 0xf but this version of numpy is 0xd
直接 pip uninstall numpy并重装。
(一)安装C++版接口
为正常使用C++版接口,需去英伟达官网下载安装NVIDIA GPU Computing Toolkit
使用其自带的VS样例做验证:D:\TensorRT-8.4.0.6.Windows10.x86_64.cuda-11.6.cudnn8.3\TensorRT-8.4.0.6\samples\sampleMNIST
打开该VS项目,在项目的库路径中添加CUDA路径:
并将D:\TensorRT-8.4.0.6.Windows10.x86_64.cuda-11.6.cudnn8.3\TensorRT-8.4.0.6\lib下的所有dll放入exe生成目录。安装完成,编译运行得到如下结果: