Ubuntu 16.04 LTS Tensorflow-CPU/Cuda9.0 + Cudnn7.0.5 + Tensorflow-GPU_correct kernel headers and development packages in-程序员宅基地

技术标签: 环境配置  

概述

  • 此教程为Ubuntu 16.04 下 Tensorflow-GPU或者CPU版本的安装
  • 安装前,请务必执行1.1.1的操作,验证您的显卡是NIVIDIA的并且支持GPU计算。如果不支持GPU运算,则只能安装Tensorflow-CPU版本,直接跳过1、2、3大标题,从4. Virtualenv + Tensorflow1.5处开始,并选择安装CPU版本
  • 注意!!安装CUDA和cuDNN时,都不要安装最新版本,一切按照本篇中的版本进行安装。

1. NVIDIA CUDA Toolkit 9.0

1.1 Pre-installation Actions

1.1.1 Verify the system has a CUDA-capable GPU.

type the following at the command line to get the information of your graphics card

$ lspci | grep -i nvidia

If your graphics card is from NVIDIA and it is listed in here, your GPU is CUDA-capable.

1.1.2 Verify the system is running a supported version of Linux.

The CUDA Development Tools are only supported on some specific distributions of Linux. These are listed in the CUDA Toolkit release notes.

To determine which distribution and release number you’re running, type the following at the command line:

$ uname -m && cat /etc/*release

You should see output similar to the following, modified for your particular system:

x86_64
Red Hat Enterprise Linux Workstation release 6.0 (Santiago)

The x86_64 line indicates you are running on a 64-bit system. The remainder gives information about your distribution.

1.1.3 Verify the system has gcc installed.

To verify the version of gcc installed on your system, type the following on the command line:

$ gcc --version

If an error message displays, you need to install the development tools from your Linux distribution or obtain a version of gcc and its accompanying toolchain from the Web.

1.1.4 Verify the system has the correct kernel headers and development packages installed.

The kernel headers and development packages for the currently running kernel can be installed with:

$ sudo apt-get install linux-headers-$(uname -r)



1.2 Install

1.2.1 Download the CUDA Toolkit 9.0

CUDA Toolkit 9.0 Downloads
这里写图片描述
这里写图片描述

1.2.2 Install the CUDA Toolkit 9.0

$ cd ~/Downloads
$ sudo dpkg -i cuda-repo-ubuntu1604_9.0.176-1_amd64.deb
$ sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
$ sudo apt-get update
$ sudo apt-get install cuda-9-0


1.3 Post-installation Actions

$ export PATH=/usr/local/cuda-9.0/bin${
    PATH:+:${
    PATH}}
$ export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64\
                         ${
    LD_LIBRARY_PATH:+:${
    LD_LIBRARY_PATH}}
  • 重启以更新环境变量


2. cuDNN v7.0

2.1 Download

To download the cuDNN , click here
这里写图片描述
The download of cuDNN requires membership of the NVIDIA Developer Program,so you need to create your account first and then Login.
这里写图片描述
Do not choose the latest version
这里写图片描述
Choose the v7.0.5 for CUDA 9.0
这里写图片描述
Download Runtime 、 Developer 、Code Samples
这里写图片描述

2.2 Install

$ cd ~/Downloads 
$ sudo dpkg -i libcudnn7_7.0.5.15-1+cuda9.0_amd64.deb
$ sudo dpkg -i libcudnn7-dev_7.0.5.15-1+cuda9.0_amd64.deb
$ sudo dpkg -i libcudnn7-doc_7.0.5.15-1+cuda9.0_amd64.deb


2.3 Verifying

To verify that cuDNN is installed and is running properly, compile the mnistCUDNN

  • Copy the cuDNN sample to a writable path.
$ cp -r /usr/src/cudnn_samples_v7/ $HOME
  • Go to the writable path.
$ cd $HOME/cudnn_samples_v7/mnistCUDNN
  • Compile the mnistCUDNN sample.
$ make clean && make
  • Run the mnistCUDNN sample.
$ ./mnistCUDNN

If cuDNN is properly installed and running on your Linux system, you will see a
message similar to the following:

Test passed!


3. Virtualenv + Tensorflow1.5

3.1 Install the Virtualenv

  • 发出下列其中一条命令来安装 pip 和 Virtualenv:
$ sudo apt-get install python3-pip python3-dev python-virtualenv
  • 发出下列其中一条命令来创建 Virtualenv 环境:
$ sudo virtualenv --system-site-packages -p python3 ~/tensorflow 

targetDirectory 用于指定 Virtualenv 树的顶层目录。我们的说明中假定 targetDirectory 为 ~/tensorflow,但您可以选择任何目录。

3.2 source the Virtualenv

  • 为了避免每次激活输入长命令,我们用tensorflow来代替”source ~/tensorflow/bin/activate”。
  • 打开~/.bashrc file文件
$ sudo gedit ~/.bashrc
  • 文件最后一行追加一行,然后保存并关闭文件
alias tensorflow="source ~/tensorflow/bin/activate"
  • 无需重启的更新环境变量的方法
$ source ~/.bashrc
  • 发出下列其中一条命令来激活 Virtualenv 环境:
$ tensorflow
  • 执行上述 source 命令后,您的提示符应该会变成如下内容则表示成功
(tensorflow)$ 


3.3 Install the Tensorflow

  • 发出下列其中一条命令以在处于活动状态的 Virtualenv 环境中安装

  • TensorFlow-CPU版本(无需安装CUDA和CUDNN)

(tensorflow)$ sudo pip3 install --upgrade tensorflow
  • TensorFlow-GPU版本(需要安装CUDA和CUDNN)
(tensorflow)$ sudo pip3 install --upgrade tensorflow-gpu


4.3 Verifying the Tensorflow

$ tensorflow
(tensorflow)$ Python3
>> import tensorflow as tf
>> hello = tf.constant('Hello, TensorFlow!')
>> sess = tf.Session()
>> print(sess.run(hello))

若如果系统输出以下内容,就说明您可以开始编写 TensorFlow 程序了:

Hello, TensorFlow!
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Mr_Troy/article/details/80099796

智能推荐

LSTM介绍_lstm的定义-程序员宅基地

文章浏览阅读936次。LSTM是RNN的一种。它的出现解决了梯度失真的问题。而且使得RNN的收敛速度比普通的RNN要快上不少。LSTM的名称有些奇特,叫长短时记忆。这个实际反应了这个算法的原理:保持记忆的长短。我们的大脑并不是记忆所有的信息,有短时记忆,也有长时间记忆。LSTM就是利用这个原理来设计的。普通的RNN只是保持了短时的记忆(h),在LSTM中增加了对记忆的处理。这个增加的部分控制的逻辑比较复杂。简单的来说就是通过3个门:遗忘门、输入门和输出门来控制增加的记忆单元。需要注意的是,增加的门都是用来控制记忆单元的。_lstm的定义

计算机科学终审多长时间,一些计算机科学核心期刊的投稿经验-程序员宅基地

文章浏览阅读4.7k次。1. 计算机工程与应用: 评审费为100元,评审期为60-70天左右,布局费为930-1100元. 该杂志为期十年,从雇用到出版大约需要12个月. 有时这取决于运气. 如果幸运的话,大约四个月. 最大的特点是该期刊载有大量论文,相对来说比较好,但每个人都看中此功能,所以就论文数量而言,一定要有创新性,并且要更加重视博士论文. 论文. 可以加快发布速度,但是成本更高. 摘要: 简单.2. 计算机工程..._计算机科学审稿

手机开发实战197——CTS认证测试3_cts refapp-程序员宅基地

文章浏览阅读467次。4、配置和使用CTS4.1、配置CTS1.6及以上版本才能运行CTS。解压ZIP包,编辑android-cts/tools/startcts脚本,修改变量SDK_ROOT来与环境相匹配。例如:SDK_ROOT=/home/myuser/android-sdk-linux_x86-1.6_r1即,指向SDK的根目录。4.2、配置设备下面_cts refapp

完全二叉树的结点数计算_完全二叉树结点数计算公式-程序员宅基地

文章浏览阅读1.6w次,点赞13次,收藏33次。完全二叉树有一个很有趣的性质:结点从1开始编号,层序。那么分每一个结点(编号为i)的左孩子结点是2i,右孩子结点编号是2i+1. 反之,根据孩子结点的编号可以推知父结点的编号:孩子结点编号的下取整。下面是较聪明的应用: 一棵完全二叉树有1001个结点。其中叶结点的个数是:501个。分析:1001个结点,则最后一个结点的编号是1001,那么它的父亲结点编号是500,注意,这个并不一定是倒数第二_完全二叉树结点数计算公式

HTML——表单详解_html表单-程序员宅基地

文章浏览阅读1.3w次,点赞46次,收藏294次。HTML——表单的详细解析_html表单

快解析的ERP远程管理解决方案_erp远程交付-程序员宅基地

文章浏览阅读289次。快解析有24小时不间断技术服务支持,用户遇到任何技术商问题都可以随时得到帮助,而这项专业的1V1定制服务是行业内独有的,它的各项功能在同类型的品牌产品中是极具性价比的。另外,要特别一提的是,随着企业对人力资源管理重视的加强,已经有越来越多的 ERP 厂商将人力资源管理纳入了 ERP 系统的一个重要组成部分。ERP是指建立在信息技术基础上,通过先进管理思想和方法,对企业内部资源和外部资源进行整合,通过标准化的数据和业务操作流程,把企业的人、财、物等进行紧密集成,最终实现资源优化配置和业务流程优化目的的方法。_erp远程交付

随便推点

智能经济时代,百度智能云在升级计算产业的竞争门槛-程序员宅基地

文章浏览阅读1.1k次。文 | 曾响铃来源 | 科技向令说(xiangling0815)“数学是自然科学中最基础的学科,计算随处可见、可用。”依稀记得,在学生时代,数学老师开课必会强调那么一句。事实上,回顾我们日常生活的场景,也确实如此。数学计算与我们息息相关,乃至于我们有时候甚至忽视了它的存在。在互联网高度发达的今天,计算产业的处境也大抵如此。基本上,我们的每一个网络操作,都离不开数字计算的支持。但是,对于计算产业的认知,大众又往往会不可避免的将其忽视。然而,对于科技企业而言,却是刚好相反,计算产业是最不能被

Chrome插件抓取:解锁无限可能_chrome 解锁csdn-程序员宅基地

文章浏览阅读86次。1.什么是Chrome插件抓取? Chrome插件抓取是指利用Chrome浏览器的扩展程序(插件)功能,实现对网页内容的自动化获取和处理的技术。通过编写和安装适当的插件,用户可以方便地从网页中提取所需的信息,如文字、图片、链接等。2. Chrome插件抓取有哪些应用场景? -_chrome 解锁csdn

Windows 技术篇 - windows日期和时间设置里没有Internet 时间页签原因和解决方法_“internet时间”选项卡 没有-程序员宅基地

文章浏览阅读2.4w次,点赞5次,收藏10次。因为工作关系设置了一下系统时间,然后想用网络获取最新的时间来自动更正下,然后发现没有这个功能…,百度后发现其实是有一个Internet时间页签的,在这个页签里才可以设置,那为什么我这里没有呢?因为我的计算机加入了域,加入了域就不能用这个功能了。如何查看自己的计算机有没有加入域呢?在计算机属性里的系统属性里就能看到_“internet时间”选项卡 没有

opencv warpAffine()函数详解 -- 图像旋转与平移-程序员宅基地

文章浏览阅读4.6w次,点赞15次,收藏91次。简述仿射变换是二维坐标间的线性变换,故而变换后的图像仍然具有原图的一些性质,包括“平直性”以及“平行性”,常用于图像翻转(Flip)、旋转(Rotations)、平移(Translations)、缩放(Scale operations)等,然而其实现的函数就是cv::warpAffine()下面我们将对warpAffine()函数进行介绍,并且实现图像的旋转和平移。warpAffine..._warpaffine

电池的寿命-程序员宅基地

文章浏览阅读317次。电池的寿命链接:http://ybt.ssoier.cn:8088/problem_show.php?pid=1229时间限制: 1000 ms 内存限制: 65536 KB【题目描述】小S新买了一个掌上游戏机,这个游戏机由两节5号电池供电。为了保证能够长时间玩游戏,他买了很多5号电池,这些电池的生产商不同,质量也有差异,因而使用寿命也有所不同,有的能使用5个小时,..._电池的寿命csdn

Android studio64新建APP项目时,报错 junit:junit:4.12_testimplementation 'junit:junit:4.12' 指定源-程序员宅基地

文章浏览阅读4.4k次。大家都是要求注释掉,但不想这样,看了很多博客,快绝望的时候,用这个办法成功了文件:E:\android\app (工程文件目录) 下面的 build.gradle 文件 在这个文件中加入最后划线3行,保存即可,然后再retryapply plugin: 'com.android.application'android { compileSdkVersion 26 ..._testimplementation 'junit:junit:4.12' 指定源