Ubuntu 22.04 安装tensorrt

环境:ubuntu22.04

显卡:NVIDIA 1080

此前操作系统没有安装过显卡相关驱动和工具包。

没有使用deb安装包安装:原因是安装的时候校验版本一直安装不上,故使用tar手动配置。

如何是其他的显卡应该可以使用deb安装包,按照官方的操作步骤安装即可。

1. 基础安装

首先执行 nvidia-smi ,提示没有相关命令,并给出几个安装的建议,我安装的是535的那一个(不是带server的)。(个人安装的较老,可以根据自己的需求选择版本)

然后使用nvidia-smi 此时在终端有显卡的相关信息。

查看显卡cuda版本

bash 复制代码
nvcc --version
# 没有使用下面指令安装
sudo apt install nvidia-cuda-toolkit -y

安装的为11.5:

bash 复制代码
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Thu_Nov_18_09:45:30_PST_2021
Cuda compilation tools, release 11.5, V11.5.119
Build cuda_11.5.r11.5/compiler.30672275_0

如果能够正常显示,此时cuda的基本环境安装完成了,下面是开发工具的安装。

2.cudnn

安装tensorRT之前,还需要安装cudnn。

从下面链接中选择和章节1中对应的版本(版本不同安装之后会有问题)。

cuDNN Archive | NVIDIA Developer

下载tar压缩包,下载的是:

cudnn-linux-x86_64-8.3.1.22_cuda11.5-archive.tar.xz,cuda11.5,11.5是对应的版本号。

然后执行下面的指令:

bash 复制代码
tar xvf cudnn-linux-x86_64-8.3.1.22_cuda11.5-archive.tar.xz
cd cudnn-linux-x86_64-8.3.1.22_cuda11.5-archive
# 创建文件夹
sudo mkdir -p /usr/local/cuda-11.5/include/
sudo mkdir -p /usr/local/cuda-11.5/lib64/

# 复制头文件到CUDA的include目录
sudo cp include/cudnn*.h /usr/local/cuda-11.5/include/

# 复制库文件到CUDA的lib64目录
sudo cp lib/libcudnn* /usr/local/cuda-11.5/lib64/

# 设置文件权限
sudo chmod a+r /usr/local/cuda-11.5/include/cudnn*.h 
sudo chmod a+r /usr/local/cuda-11.5/lib64/libcudnn*

# 检查是否存在cuDNN库
ls /usr/local/cuda-11.5/lib64/libcudnn.so*

到此cudnn安装完成。(路径配置在3章节的步骤3)

3.安装tensorRT

步骤1:注册账号并下载安装包

tensorRT的安装需要注册nvidia账号,根据提示安装即可。

Log in | NVIDIA Developer

然后下载tensorRT版本,下载为:

TensorRT-8.4.1.5.Linux.x86_64-gnu.cuda-11.6.cudnn8.4.tar.gz

本来想下载11.5的,没有找到,下载了11.6的,该版本根据官方解释也支持11.5。

步骤2:解压并将包移动到系统目录下

下载完成后执行下面的指令:

bash 复制代码
tar xvf TensorRT-8.4.1.5.Linux.x86_64-gnu.cuda-11.6.cudnn8.4.tar.gz
sudo mv TensorRT-8.4.1.5 /usr/local/

步骤3:环境配置

bash 复制代码
vim ~/.bashrc

# 添加下面的内容并保存
export CUDA_HOME=/usr/local/cuda-11.5
export TENSORRT_DIR=/usr/local/TensorRT-8.4.1.5
export LD_LIBRARY_PATH=$TENSORRT_DIR/lib:$CUDA_HOME/lib64:$LD_LIBRARY_PATH 
export PATH=$CUDA_HOME/bin:$TENSORRT_DIR/bin:$PATH

# 更新
source ~/.bashrc

# 验证
trtexec # 此时指令已生效,应该在终端输出命令的相关参数

注意:如果是需要使用python接口,还需要执行以下命令:

我的python版本是3.8,安装以下版本的whl包。

bash 复制代码
cd /usr/local/TensorRT-8.4.1.5/python
pip install tensorrt-8.4.1.5-cp38-none-linux_x86_64.whl

#Processing ./tensorrt-8.4.1.5-cp38-none-linux_x86_64.whl
#Installing collected packages: tensorrt
#  Attempting uninstall: tensorrt
#    Found existing installation: tensorrt 10.13.2.6
#    Uninstalling tensorrt-10.13.2.6:
#      Successfully uninstalled tensorrt-10.13.2.6
#Successfully installed tensorrt-8.4.1.5
相关推荐
Rabitebla19 分钟前
【Linux 底层原理】进程(十):进程等待详解---从僵尸进程到 wait、waitpid 与 status
linux·c++·笔记·学习·visual studio
Android系统攻城狮5 小时前
Linux FFmpeg深度解析之avcodec_default_get_encode_buffer调用流程与实战(二十八)
linux·运维·服务器·ffmpeg·车载音视频·ffmpeg音视频
程序员初一5 小时前
8080 打不开的四层定位:监听地址、ufw、DOCKER 链、安全组
linux·ssh
程序开发阿元5 小时前
swappiness 60 和 10 差在哪:一台 1C1G 的三轮对比
linux·ssh
无足鸟ICT6 小时前
【RHCA+】mpstat命令(监控CPU)
linux
GeW7 小时前
新质生产力Linux和数据库为啥这么关键
linux
番茄啊7 小时前
linux 开启xftp连接
linux·运维·服务器
CodeYp20198 小时前
第1讲:Linux 基础指令
linux·指令
李松桃8 小时前
基于端口号的服务配置
linux·nginx-核心模块配置
CodeYp201913 小时前
第14讲:mmap 实现文件 LRU 缓存
linux·lru·mmap