转载请注明出处:

https://www.cnblogs.com/darkknightzh/p/11129472.html

参考网址:

https://docs.nvidia.com/deeplearning/sdk/tensorrt-install-guide/index.html

https://arleyzhang.github.io/articles/7f4b25ce/

https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html

1 说明

1.1 直接使用deb安装的。不过不记得之前cuda驱动是如何安装的了。网上说cuda驱动和TensorRTF都是deb安装的才行。。。

1.2 安装环境是ubuntu 16.04.1+anaconda(python3.6.8)+cuda9.0+cudnn7.5

2 安装步骤

2.1 sudo dpkg -i nv-tensorrt-repo-ubuntu1604-cuda9.0-trt5.1.5.0-ga-20190427_1-1_amd64.deb

2.2 sudo apt-key -add /var/nv-tensorrt-repo-cuda9.0-trt5.1.5.0-ga-20190427/7fa2af80.pub

2.3 sudo apt-get update

2.4 sudo apt-get install tensorrt

至此,TensorRTF安装完成。

2.5 通过下面命令检查一下是否安装成功:

dpkg -l | grep TensorRT

2.6 通过下面命令安装(不知道是啥,反正安装就对了):

sudo apt-get install python3-libnvinfer-dev

2.7 到上面,python里面无法import tensorrt。直接使用ubuntu自带的archive manager打开nv-tensorrt-repo-ubuntu1604-cuda9.0-trt5.1.5.0-ga-20190427_1-1_amd64.deb文件,可以看到里面有python3.6的XXX。通过下面命令安装该whl文件。

pip install tensorrt-5.1.5.0-cp36-none-linux_x86_64.whl

2.8 验证python能否导入tensorrt(此处成功):

2.9 安装PyCUDA。

PyCUDA允许python直接访问CUDA的API。

首先保证nvcc在PATH路径中。而后输入:

pip install 'pycuda>=2017.1.1'

2.10 验证程序能否运行(见下面网址)

https://arleyzhang.github.io/articles/7f4b25ce/

可以把 tensorrt 文件夹拷贝到用户目录下,方便自己修改测试例程中的代码。

进入 samples 文件夹直接 make,会在 bin 目录中生成可执行文件,可以一一进行测试学习。

运行了sample_mnist,结果如下:

3 卸载

具体见网址:

https://docs.nvidia.com/deeplearning/sdk/tensorrt-install-guide/index.html#uninstalling

sudo apt-get purge "libnvinfer*"
pip uninstall tensorrt

4 其他

4.1 cudnn使用deb安装:

说明:不建议使用这种方式安装。

Navigate to your <cudnnpath> directory containing cuDNN Debian file.

Install the runtime library, for example:

sudo dpkg -i libcudnn7_7.0.3.-+cuda9.0_amd64.deb

Install the developer library, for example:

sudo dpkg -i libcudnn7-devel_7.0.3.-+cuda9.0_amd64.deb

Install the code samples and the cuDNN Library User Guide, for example:

sudo dpkg -i libcudnn7-doc_7.0.3.-+cuda9.0_amd64.deb

4.2 使用tar文件安装

Navigate to your <cudnnpath> directory containing the cuDNN Tar file.

Unzip the cuDNN package.

tar -xzvf cudnn-9.0-linux-x64-v7.tgz

Copy the following files into the CUDA Toolkit directory, and change the file permissions.

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

4.3 测试cudnn是否安装成功

1)/usr/src/cudnn_samples_v7放到home文件夹下。

2)cd mnistCUDNN/

3)make

4)./mnistCUDNN

出错了。。。

原因是之前/usr/local/cuda中cudnn用的是7.4.2版本的。替换为7.5之后,运行成功。(实际上在/usr/lib/x86_64-linux-gnu中有刚刚使用deb装上的7.5版本的cudnn,但是程序未能找到。不知道目前有两套相同版本的cudnn,以后会不会出问题吧。。。所以不建议使用deb安装,位置不可控)

(原)Ubuntu安装TensorRT的更多相关文章

  1. [原] ubuntu安装Fcitx输入法

    1.终端输入: sudo add-apt-repository ppa:wengxt/fcitx-nightly 按回车确认添加 2.sudo apt-get update 更新软件源 3.sudo ...

  2. ubuntu安装ftp服务器

    ubuntu安装ftp服务器 1: 安装vsftpd ~$ sudo apt-get install vsftpd ubuntu10.10自己装了,这步省略. 2: 配置vsftpd 2.1 修改vs ...

  3. 安装XP和Ubuntu双系统问题——Ubuntu安装时无法识别原有系统

    我主机本来安装了windows xp 和unbuntu15.04,由于在ubuntu下不小心卸载某依赖后,无法登入桌面,网上查了好多资料,原因各种,解决途径也各种,最终是还没有解决问题.各种更新,各种 ...

  4. 【Linux探索之旅】第一部分第四课:磁盘分区,并完成Ubuntu安装

    内容简介 1.第一部分第四课:磁盘分区,并完成Ubuntu安装 2.第一部分第五课预告:Unity桌面,人生若只如初见 磁盘分区 上一课我们正式开始安装Ubuntu了,但是到了分区的那一步,小编却戛然 ...

  5. Ubuntu 安装 H3C iNode 客户端

    Ubuntu 安装 H3C iNode 客户端 ​ 之前在网上找了很多方法,也找了不少的安装包,却由于各种各样的问题,最后都没有成功(因为自己太菜).而学校用的就是iNode,客户端装不了,只能用Wi ...

  6. 第21篇 ubuntu安装ftp服务器(转载)

    ubuntu安装ftp服务器 1: 安装vsftpd ~$ sudo apt-get install vsftpd ubuntu10.10自己装了,这步省略. 2: 配置vsftpd 2.1 修改vs ...

  7. Win10 + Ubuntu 安装教程(痛苦踩坑)

    今天搞了一天,痛苦万分,本文的教程基本适用大部分情况,现在记录下需要主义的几点: 一.制作ubuntu usb安装盘的时候,格式要选saw的,千万不要用usb-HDD+的 二.安装完后使用EasyBC ...

  8. Mac OS、Ubuntu 安装及使用 Consul

    Consul 概念(摘录): Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,比如 Airbnb 的 SmartStac ...

  9. ubuntu安装mysql

    好记性不如烂笔头,记录一下,ubuntu安装mysql的指令. 安装MySQL: sudo apt-get install mysql-server sudo apt-get install mysq ...

随机推荐

  1. luoguP3172 [CQOI2015]选数

    题意 所求即为: \(\sum\limits_{i_1=L}^{R}\sum\limits_{i_2=L}^{R}...\sum\limits_{i_k=L}^{R}[\gcd(i_1,i_2,... ...

  2. 在springboot中使用redis缓存,将缓存序列化为json格式的数据

    背景 在springboot中使用redis缓存结合spring缓存注解,当缓存成功后使用gui界面查看redis中的数据 原因 springboot缓存默认的序列化是jdk提供的 Serializa ...

  3. 2.第一个Vue程序

    1.IDEA中安装Vue.js插件 2.建立项目以及html文件 1.创建一个 HTML 文件 2.引入 Vue.js <script src="https://cdn.jsdeliv ...

  4. Linux性能优化实战学习笔记:第三讲

    一.关于上下文切换的几个为什么 1. 上下文切换是什么? 上下文切换是对任务当前运行状态的暂存和恢复 2. CPU为什么要进行上下文切换? 当多个进程竞争CPU的时候,CPU为了保证每个进程能公平被调 ...

  5. [LeetCode] 174. Dungeon Game 地牢游戏

    The demons had captured the princess (P) and imprisoned her in the bottom-right corner of a dungeon. ...

  6. Solidity智能合约语言

    语言本身 ethereum官网 https://ethereum.org/zh/ 笔记 uint[] result = new uint[](3);   uint[] memory result = ...

  7. Spring Boot 知识笔记(整合Redis)

    一.引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  8. Salesforce 开发整理(七)配置审批流

    salesforce提供了比较强大的可配置审批流功能,在系统中翻译为“批准过程”.所以需要配置审批时,选择创建 ——>  工作流和批准 ——> 批准过程,然后选择管理批准过程,选择需要配置 ...

  9. LOJ 6240. 仙人掌

    我尽力写一篇比较详细的题解.... LOJ 6240. 仙人掌 我先来给你安利一个题 [BZOJ3451]Tyvj1953 Normal (DSU/点分治+NTT/FFT) 同样的,我们计算每一个点对 ...

  10. OIDC-Open ID Connect

    OpenID Connect的简称,OIDC=(Identity, Authentication) + OAuth 2.0.它在OAuth2上构建了一个身份层,是一个基于OAuth2协议的身份认证标准 ...