转载https://www.bilibili.com/video/BV1r7411n7gQ?p=2
文章目录
1安装cuda
sudo apt-get install nvidia-cuda-toolkit
可以查看下版本
cat /usr/local/cuda-10.0/
local下面文件夹可以知道cuda版本
https://developer.nvidia.com/nvidia-tensorrt-download
2下载tensorRT 7
在nvidia官网注册后下载
这里下的是TensorRT-7.0.0.11.Ubuntu-18.04.x86_64-gnu.cuda-10.0.cudnn7.6
4解压
解压有有一系列的文件夹
tar -zxvf cudnn-10.0-linux-x64-v7.6.5.32.tgz
5把lib添加到环境变量
#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:TensorRT-${version}/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/roy/downloads/nvidiaTensorRT-7.0.0.11/lib
6创建虚拟环境
利用anaconda新建一个python版本为3.6.8的版本
conda create -n TensorRT python=3.6.8
conda activate TensorRT
7安装python的TensorRT安装包,这里python为3.6
终端进入此文件中运行
#sudo pip3 install tensorrt-*-cp3x-none-linux_x86_64.whl
sudo pip3 install tensorrt-*-cp36-none-linux_x86_64.whl
8安装Python UFF包(如果你打算在TensorFlow中使用TensorRT)
到uff文件夹中安装文件
#cd TensorRT-${version}/uff
#sudo pip3 install uff-0.6.5-py2.py3-none-any.whl
roy@ngi:~/downloads/nvidia/TensorRT-7.0.0.11/python$
cd ../uff/
pip install uff-0.6.5-py2.py3-none-any.whl
9.安装Python graphsurgeon
通过tensorRT 去自定义网络结构
#cd TensorRT-${version}/graphsurgeon
# sudo pip3 install graphsurgeon-0.4.1-py2.py3-none-any.whl
cd ../graphsurgeon/
pip install graphsurgeon-0.4.1-py2.py3-none-any.whl
10验证安装是否成功
中间有许多要安装的包如果是新环境
conda install tensorflow==1.14#直接安装2x版本会报错
conda install pillow
pip install 'pycuda>=2019.1.1'
需要在samples/python/end_to_end_tensorflow_mnist新建models文件夹来存储模型
#$ cd samples/python/end_to_end_tensorflow_mnist
#$ python3 models.py
#$ cd /home/myuser/TensorRT-7.0.0.11/data
#$ python3 download_pgms.py
#$ python3 smaples.py -d /home/myuser/TensorRT-7.0.0.11/data
cd samples/python/end_to_end_tensorflow_mnist
python model.py
转至data/mnist文件夹,下载验证图片
python3 download_pgms.py
转至/home/roy/downloads/nvidia/TensorRT-7.0.0.11/samples/python/end_to_end_tensorflow_mnist文件夹
生成uff文件
convert-to-uff ./models/lenet5.pb
python3 sample.py -d /home/roy/downloads/nvidia/TensorRT-7.0.0.11/data/mnist
加速成功
报错 1
出现如上问题
这个报错要么是环境变量配置问题,要么是CUDNN连接建立问题。
vim ~/.bashrc
export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda-10.0
2.CUDNN连接建立
cd /usr/local/cuda-10.0/lib64
sudo rm -rf libcudnn.so libcudnn.so.7 #删除原有版本号,版本号在cudnn/lib64中查询
sudo ln -s libcudnn.so.7.0.5 libcudnn.so.7 #生成软连接,注意自己下载的版本号
sudo ln -s libcudnn.so.7 libcudnn.so
sudo ldconfig #立即生效
此时问题解决
报错2
没有生成uff文件,这里其实要先做,这就是加速的模型
convert-to-uff ./models/lenet5.pb