TensorRT环境配置–Linux(Ubuntu)
TensorRT部署-Windows环境配置: https://blog.csdn.net/m0_70420861/article/details/135658922?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22135658922%22%2C%22source%22%3A%22m0_70420861%22%7D
如果还未配置环境的话,nvidia-smi是不会显示的。
以CUDA-BEVFusion部署为例搭建环境:
https://github.com/NVIDIA-AI-IOT/Lidar_AI_Solution/tree/master/CUDA-BEVFusion
查看兼容性:https://docs.nvidia.com/deeplearning/tensorrt/release-notes/index.html#rel-8-6-1
查看Ubuntu版本
lsb_release -a
确定各个版本:
CUDA:11.6
cuDNN: 8.6.0
TensorRT:8.6.1.6
Ubuntu:18.04
安装前先查询一下系统里是否已经安装cuda
ll /usr/local
下载地址:https://developer.nvidia.com/cuda-11-6-0-download-archive?target_os=Linux
wget https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda_11.6.0_510.39.01_linux.run
sudo sh cuda_11.6.0_510.39.01_linux.run
安装 CUDA 时出现 “Failed to verify gcc version” 错误通常是由于系统上没有正确配置或安装 GCC。CUDA 要求必须有一个完整的 C/C++ 开发环境,包括 GCC 和 G++ 等编译器。
安装一下即可:
sudo apt install gcc
sudo sh cuda_11.6.0_510.39.01_linux.run
accpct之后
有driver的可以不安装,就是nvidia-smi能显示的说明有driver
其他的都可以不要
如果自己另外安装驱动的话,可以参考博文https://zhuanlan.zhihu.com/p/641730069
下载地址:https://developer.nvidia.com/rdp/cudnn-archive
打开cuDNN安装教程: https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html
下载安装TensorRT linux版本
TensorRT下载安装地址:https://developer.nvidia.com/nvidia-tensorrt-8x-download
cd TensorRT-8.6.1.6
source ~/.bashrc
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:TensorRT-8.6.1.6/include
source ~/.bashrc
测试是否成功:
cd TensorRT-8.6.1.6/samples/sampleOnnxMNIST
make
cd TensorRT-8.6.1.6/bin/
./sample_onnx_mnist
如果出现
这个错误提示表明程序找不到libnvinfer.so.8动态链接库文件。需要将该库文件所在的路径添加到LD_LIBRARY_PATH环境变量中,使得程序能够正确加载该库文件。
首先,需要找到libnvinfer.so.8文件所在的路径。可以使用以下命令来查找:
sudo find / -name libnvinfer.so.8
一旦找到该文件的路径,你可以将其添加到LD_LIBRARY_PATH中,方法如下:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:路径
sudo ldconfig
比如:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/root/TensorRT-8.6.1.6/targets/x86_64-linux-gnu/lib
sudo ldconfig
./sample_onnx_mnist
就成功了!!!
关于环境配置:推荐博客https://blog.csdn.net/Msjiangmei/article/details/132585145
TensorRT C++ 代码解析可参考:https://blog.csdn.net/m0_70420861/article/details/135574423
删除所有生成的目标文件、中间文件和可执行文件,以便重新构建项目
make clean
make -j64是一个make命令的参数,它指定了在编译过程中同时运行的任务数量。其中,"-j"表示并行处理的意思,"64"表示任务的最大数量。加快编译速度
make -j64
TensorRT部署-Windows环境配置: https://blog.csdn.net/m0_70420861/article/details/135658922?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22135658922%22%2C%22source%22%3A%22m0_70420861%22%7D