目标:先跑demo,再学习源码
step1, 提前准备好CUDA环境
安装CUDA,cuDNN
注意,CUDA,cuDNN需要去官网下载.run和tar文件安装,否则在下面step4 make命令会报找不到cuda等的错误,具体安装教程网上有很多。
CUDA通过.run文件安装后,需要配置环境变量,命令:vim ~/.bashrc, 以及source ~/.bashrc使生效
export PATH=$PATH:/usr/local/cuda-12.2/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-12.2/lib64
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-12.2/extras/CUPTI/lib64
然后cnDNN目前下载(我的版本:cudnn-linux-x86_64-8.9.6.50_cuda12-archive)解压后只有include, lib文件夹,没有lib64了,所以copy时候把之前的从lib64变成从lib复制。即:
cp lib/* /usr/local/cuda-12.2/lib64/
cp include/* /usr/local/cuda-12.2/include/
sudo chmod a+r /usr/local/cuda-12.2/include/cudnn.h
sudo chmod a+r /usr/local/cuda-12.2/lib64/libcudnn*
step2, 下载并安装tensorRT
tar -xzvf TensorRT-8.6.1.6.Linux.x86_64-gnu.cuda-12.0
添加进环境变量
vim ~/.bashrc
# 添加以下内容
export LD_LIBRARY_PATH=/home/xxx/0_code/TensorRT-8.6.1.6/lib:$LD_LIBRARY_PATH
export LIBRARY_PATH=/home/xxx/0_code/TensorRT-8.6.1.6/lib:$LIBRARY_PATH
source ~/.bashrc
step3, tensorRT组件安装
参考:Ubuntu 20.04 安装 TensorRT记录 - 知乎
step4, C++测试
cd path/TensorRT-8.6.1.6/samples/
make -j8
然后去samples目录生成的可行性文件进行验证
cd path/TensorRT-8.6.1.6/bin/
随便找一个执行
./sample_char_rnn
执行时候遇到问题就解决啥问题,比如CUDA initialization failure with error: 999-CSDN博客
正确执行如下截图: