IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Ubuntu配置TensorRT及验证 -> 正文阅读

[系统运维]Ubuntu配置TensorRT及验证

博主的一些基本环境配置可见之前博客非虚拟机环境下Ubuntu配置_jiugeshao的专栏-CSDN博客

TensorRT的介绍见之前博客,TensorRT的安装、TensorRT如何加速Pytorch、Tensorflow、Caffe等框架模型的资料还不是很多,建议还是先多看看官网提供的手册,原汁原味。

Developer Guide :: NVIDIA Deep Learning TensorRT Documentationhttps://docs.nvidia.com/deeplearning/tensorrt/developer-guide/index.html整了那么多东西之后发现,掌握了多少东西并不重要,快速获取知识的能力才是重要的,要善于从一些官网手册中获取最原始的资料。(博主工作中也经常需要这种探索,无人告知,只能自己去琢磨探索,无形之中适应了这种节奏)

这里安装Anaconda是为了在其python环境里去验证下cuda和cudnn是否配置成功了,同时后面系列博客的python环境也是在通过此Anaconda版本配置

第一步: 准备安装Anaconda

Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source MirrorIndex of /anaconda/archive/ | 清华大学开源软件镜像站,致力于为国内和校内用户提供高质量的开源软件镜像、Linux 镜像源服务,帮助用户更方便地获取开源软件。本镜像站由清华大学 TUNA 协会负责运行维护。https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/下载3.5.2版本,完毕后,cd到文件所在目录下,输入如下命令进行安装

bash Anaconda3-5.2.0-Linux-x86_64.sh

按照提示操作即可,到如下信息提示的时候,输入no,完成安装。

重启终端后,输入python,看到如下信息:

第二步:安装显卡驱动

先增加如下的源

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

如下命令检查可以安装的驱动版本

ubuntu-drivers devices

出现如下信息:

?博主这里选择推荐的那一个驱动版本,如下命令进行安装

sudo apt install nvidia-driver-470

?安装前输入nvidia-smi,会出现如下信息:

安装完毕后,输入nvidia-smi

第三步:安装cuda

CUDA Toolkit Archive | NVIDIA Developerhttps://developer.nvidia.com/cuda-toolkit-archive网页上下载cuda11.0

选择配置后,按照提示执行两条命令语句进行下载安装

wget http://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux.runsudo 
sh cuda_11.0.2_450.51.05_linux.run

安装就按照指引来就行了,注意到如下时,去掉驱动安装的选择,因为前面显卡驱动已经安装好了,在每个选项前面enter下即可以选择安装还是不安装

?安装完毕后,配置下环境变量

sudo gedit ~/.bashrc
export PATH=/usr/local/cuda-11.0/bin:/usr/local/cuda-11.0/nsight-compute-2020.1.1${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
sudo source ~/.bashrc

可以运行下cuda自带的sample示例

cd /usr/local/cuda-11.0/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery

?成功安装

第四步:安装cudnn

cuDNN Archive | NVIDIA Developerhttps://developer.nvidia.com/rdp/cudnn-archive下载cudnn8.2版本

?下载完毕后解压,cd到所下载的文件夹目录下

cd /home/sxhlvye/Downloads/cudnn-11.3-linux-x64-v8.2.0.53

?然后执行如下命令,替换cuda中的和神经网络相关的库和文件

sudo cp cuda/include/cudnn.h /usr/local/cuda-11.0/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.0/lib64
sudo chmod a+r /usr/local/cuda-11.0/include/cudnn.h 
sudo chmod a+r /usr/local/cuda-11.0/lib64/libcudnn*

?验证:

在Anaconda3的python环境下安装库

pip install tensorflow-gpu==2.4.0

安装完毕后执行如下语句:

import tensorflow as tf
sess = tf.compat.v1.Session()

输入如下信息,成功安装:

?

第五步:安装TensorRT

官网上介绍了好几种装方式,博主使用的是从tar文件进行安装

Installation Guide :: NVIDIA Deep Learning TensorRT Documentation

如下网页上进行下载

https://developer.nvidia.com/nvidia-tensorrt-downloadhttps://developer.nvidia.com/nvidia-tensorrt-download

1. 解压下载的文件

tar -xzvf TensorRT-8.0.0.3.Linux.x86_64-gnu.cuda-11.0.cudnn8.2.tar.gz

解压后的文件夹名为 ensorRT-8.0.0.3

2. 添加环境变量

sudo gedit ~/.bashrc
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/sxhlvye/Downloads/TensorRT-8.0.0.3/lib
source ~/.bashrc

3.这里先省去给python添加TensorRT的库,后面博客会用到,到时候再说

验证:

这里跑下其自带的例子sampleMNIST,路径如下

cd /home/sxhlvye/Downloads/TensorRT-8.0.0.3/samples/sampleMNIST

然后直接输入make进行编译,完毕后会在路径/home/sxhlvye/Downloads/TensorRT-8.0.0.3/bin下看到编译好的可执行文件

./sample_mnist

输出如下信息:

?该自带例子演示了如何用用TensorRT在预测阶段如何加快caffe模型对一张图片的预测时间,默认参数下,其会利用路径下/home/sxhlvye/Downloads/TensorRT-8.0.0.3/data/mnist下的deploy.prototxt、mnist.caffemodel、mnist_mean.binaryproto来对该目录下的一张图片预测结果

预测结果以一堆字符堆积形状而成。

Caffe的一些知识点可见我之前博客Caffe基础(二)-使用命令行方式训练预测mnist、cifar10及自己的数据集_jiugeshao的专栏-CSDN博客https://blog.csdn.net/jiugeshao/article/details/104072324

接下来会有系列博客,基本就是围绕如何使用TensorRT来加速各框架训练出来的模型(预测一张图片的速度)

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-02-26 12:11:44  更:2022-02-26 12:14:16 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 5:52:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码