很多时候我们还是用的Linux环境作为开发环境,需要在Linux上安装TensorRT。这篇文章总结了在Ubuntu上安装TensorRT的步骤。
软硬件环境:
系统:Ubuntu 20.04
显卡:nVidia RTX 2060 laptop
一、安装显卡驱动
去nVidia官网查找对应型号驱动下载并安装,linux下是.run后缀的文件。
https://www.nvidia.cn/Download/index.aspx
二、安装TensorRT
1. 下载
先去nVidia官网下载TensorRT安装包
链接:https://developer.nvidia.com/zh-cn/tensorrt
2. 安装环境
我下载的文件名是:TensorRT-8.4.1.5.Linux.x86_64-gnu.cuda-11.6.cudnn8.4.tar.gz。需要安装对应版本的cudatoolkit和cudnn,先在conda里面查询cudatoolkit和cudnn可用版本,然后选择最相近的版本安装。
为了和其他环境隔离,创建一个tensorrt的专属环境。之后跟TensorRT相关的包全部安装在这个环境内。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
| (base) inno-suanfa@ubuntu:~$ conda create -n trt python=3.10
(base) inno-suanfa@ubuntu:~$ conda activate trt
(trt) inno-suanfa@ubuntu:~$ conda search cudatoolkit
Loading channels: done
\# Name Version Build Channel
cudatoolkit 9.0 h13b8566_0 pkgs/main
cudatoolkit 9.2 0 pkgs/main
cudatoolkit 10.0.130 0 pkgs/main
cudatoolkit 10.1.168 0 pkgs/main
cudatoolkit 10.1.243 h6bb024c_0 pkgs/main
cudatoolkit 10.2.89 hfd86e86_0 pkgs/main
cudatoolkit 10.2.89 hfd86e86_1 pkgs/main
cudatoolkit 11.0.221 h6bb024c_0 pkgs/main
cudatoolkit 11.3.1 h2bc3f7f_2 pkgs/main
(trt) inno-suanfa@ubuntu:~$ conda install cudatoolkit==11.3.1
(trt) inno-suanfa@ubuntu:~$ conda search cudnn
Loading channels: done
\# Name Version Build Channel
cudnn 7.0.5 cuda8.0_0 pkgs/main
cudnn 7.1.2 cuda9.0_0 pkgs/main
cudnn 7.1.3 cuda8.0_0 pkgs/main
cudnn 7.2.1 cuda9.2_0 pkgs/main
cudnn 7.3.1 cuda10.0_0 pkgs/main
cudnn 7.3.1 cuda9.0_0 pkgs/main
cudnn 7.3.1 cuda9.2_0 pkgs/main
cudnn 7.6.0 cuda10.0_0 pkgs/main
cudnn 7.6.0 cuda10.1_0 pkgs/main
cudnn 7.6.0 cuda9.0_0 pkgs/main
cudnn 7.6.0 cuda9.2_0 pkgs/main
cudnn 7.6.4 cuda10.0_0 pkgs/main
cudnn 7.6.4 cuda10.1_0 pkgs/main
cudnn 7.6.4 cuda9.0_0 pkgs/main
cudnn 7.6.4 cuda9.2_0 pkgs/main
cudnn 7.6.5 cuda10.0_0 pkgs/main
cudnn 7.6.5 cuda10.1_0 pkgs/main
cudnn 7.6.5 cuda10.2_0 pkgs/main
cudnn 7.6.5 cuda9.0_0 pkgs/main
cudnn 7.6.5 cuda9.2_0 pkgs/main
cudnn 8.2.1 cuda11.3_0 pkgs/main
(trt) inno-suanfa@ubuntu:~$ conda install cudnn==8.2.1
|
3. 安装TensorRT
解压TensorRT的tar压缩包,添加解压后文件夹中的lib库到系统变量:
1
| (trt) inno-suanfa@ubuntu:~$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/inno-suanfa/Downloads/TensorRT-8.4.1.5/lib
|
安装python、uff、graphsurgeon、onnx_graphsurgeon子目录下面对应的wheel:
1 2 3
| (trt) inno-suanfa@ubuntu:~$ cd ~/Downloads/TensorRT-8.4.1.5/python
(trt) inno-suanfa@ubuntu:~/Downloads/TensorRT-8.4.1.5/python$ pip3 install tensorrt-8.4.1.5-cp310-none-linux_x86_64.whl
|
(代码仅演示安装python下的wheel,其他略)
安装完成对应的3个wheel后,可在python中import trt验证是否安装成功。
三、安装pycuda
在trt环境中,先安装gcc和g++,然后用镜像安装pycuda。
1 2 3
| (trt) inno-suanfa@ubuntu:~$ conda install gcc gxx -c conda-forge
(trt) inno-suanfa@ubuntu:~$ pip3 install pycuda -i [https://pypi.mirrors.ustc.edu.cn/simple/](http://pypi.mirrors.ustc.edu.cn/simple/)
|