这里的demo指的是在理论中提到的官方demo
NVIDIA/trt-samples-for-hackathon-cn: Simple samples for TensorRT programming (github.com)
-
测试环境:
我目前测了两个部署环境
-
jetson xavier AGX, python3.6.9+tensorrt7.1.3.0+cuda10.2 直接使用的nvidia官方固件中预装的tensorrt和python3
-
x86平台 ,intel 10900K+RTX3080,python3.7.12+tensorrt8.2.5.1+cuda 11.1
-
-
安装tensorrt 官网下载安装包,tar格式的
选择路径解压,然后将路径添加到bashrc里面
比如
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/common/opt/TensorRT-8.2.5.1/lib
然后conda切换到虚拟环境
安装压缩包中对应的python文件(对应好python版本即可)
pip install tensorrt-8.2.5.1-cp37-none-linux_x86_64.whl
-
安装pycuda
直接
pip install pycuda
即可但是如果现在运行demo,是无法import cuda的
from cuda import cudart # 使用 cuda runtime API
通过github上的issues可找到解决方案 需要安装 cuda-python
NVIDIA/cuda-python: CUDA Python Low-level Bindings (github.com)
git clone 代码,然后在需要的虚拟环境
pip install -e .
即可在jetson上由于cpu拉胯,运行build的时候会卡一会,所以安装比较慢,等一下就好。
-
修改多进程bug 官方代码如果直接用的话,能跑完但是有报错如下
CUTENSOR ERROR: some argument is NULL. [TensorRT] ERROR: ../rtSafe/cuda/cutensorReformat.cpp (352) - cuTensor Error in executeCutensor: 7 (Internal cuTensor reformat failed) [TensorRT] ERROR: FAILED_EXECUTION: std::exception
需要通过这个链接的方式,解决多线程问题。
[(9条消息) 使用flask部署tensorrt模型时遇到的问题:TensorRT] ERROR: ../rtSafe/cuda/caskConvolutionRunner.cpp (408)_三叔家的猫的博客-CSDN博客