Ubuntu20.04安装TersonRT
一、基础要求:安装了显卡驱动和CUDA
TensorRT支持的CUDA版本是对应的,这里
https://www.cnblogs.com/chenjian688/p/17201414.html
GA是正式版,EA是早期测试版
这里建议下载压缩包解压后,将库路径加入环境变量直接使用
TensorRT 7.0.0 版本是第一个不再需要显式安装 cuDNN 的版本。在 TensorRT 7.0.0 及更高版本中,cuDNN 已经被整合到 TensorRT 中,并且不再需要用户单独安装 cuDNN 库。
TensorRT8.5以下的版本包由于自带了cudnn,所以只需要关注cuda版本,无需关注cudnn版本;而8.5及以上的TensorRT不再捆绑cudnn,所以不仅要明确cuda版本,还需要明确我们系统的cudnn版本,再选择相应cuda和cudnn版本对应的TensorRT8.5及以上的版本进行安装。
测试TensorRT是否安装好
cd TensorRT-8.5.3.1/samples/sampleOnnxMNIST
make
#会在 TensoRT-8.5.3.1/bin/ 文件夹下得到一个sample_onnx_mnist的可执行文件,运行即可
cudnn本地安装,下载解压后,将include和lib复制到cuda的安装目录即可
技巧:
nvidia驱动、cuda、cudnn、caffe、TensorRT的版本兼容性互相制约。在物理机上部署环境太麻烦,建议直接拉取NVIDIA的官方docker镜像。
由于caffe很久不再更新了,导致不兼容cudnn8.x,所以想用官方的caffe,得降低cudnn到7,从而导致cuda版本得降低到10.x,而cuda10.0和ubuntu18.04的cmake 3.10有兼容性问题,得升级cmake版才行。所以不升级cmake的情况下,又得降低cuda版本到9.2。
最终选择拉取:nvcr.io/nvidia/cuda:9.2-cudnn7-devel-ubuntu18.04,这个版本的镜像。
如果显卡较新,编译caffe时,还可能出现“nvcc fatal : Unsupported gpu architecture 'compute_86'"的问题,
需要通过.bashrc降低显卡算力和修改caffe的Cuda.cmake文件。
export TORCH_CUDA_ARCH_LIST="8.0"
cd caffe/cmake
vim Cuda.cmake
或者编译caffe时不使用cudnn,推理速度还是很快的。在ubuntu20.04,NVIDIA3060,cuda11.7上正常使用。