1 说明:

  本机配置:显卡gtx970,ubuntu16.4.1+cuda8.0+cudnn v5+tensorflow0.11

1. 下载

1.1 系统镜像

由于我尝试了ubuntu14.04,安装Nvidia驱动之后,会出现循环登录的问题,并始终无法找到有效的解决途径,所以只能选择ubuntu16.04了。

镜像地址 https://www.ubuntu.com/download/alternative-downloads

1.2 CUDA 8.0

https://developer.nvidia.com/cuda-downloads(下载地址) 
说明: 
(1)在NVIDIA的CUDA下载页面下,选择要使用的CUDA版本进行下载。 
(2)我们这里使用CUDA8.0(页面有提示GTX1070、GTX1080支持8.0版本),学员如果没有使用以上两个版本的GPU,可以下载CUDA7.5。DOWNLOAD(下载)。 
(3)下载需要注册。 
(4)图解选择

注意:使用deb(local)版本。

1.3 cuDNN v5

下载地址: https://developer.nvidia.com/cudnn(需要登录) 
说明: 
(1)下载需要填写一个调查问卷,就三个选项,建议认真填写,毕竟人家免费给咱使用。 
(2)填写完毕点击 I Agree To 前面的小方框

选择cudnn v5.1 for linux

1.4 Tensorflow 0.11

tensorflow github上面提到 4 种安装方式,本教程使用 第四种 源码安装 
Virtualenv installation 
Anaconda installation 
Docker installation 
Installing from sources 
https://github.com/tensorflow/tensorflow(下载地址) 
说明: 我选择的是linux gpu python2

(2) 点击Python 2开始下载。

2. 安装ubuntu16.04 LTS 系统

详情请查看之前笔记windows系统安装ubuntu双系统

3. 安装NVIDIA驱动

打开terminal输入以下指令:

sudo apt-get update

然后在系统设置->软件更新->附加驱动->选择nvidia最新驱动(361)->应用更改

4.安装cuda8.0

4.1 gcc降版本

ubuntu的gcc编译器是5.4.0,然而cuda8.0不支持5.0以上的编译器,因此需要降级,把编译器版本降到4.9: 
在terminal中执行:

sudo apt-get install g++-4.9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-
sudo update-alternatives --install /usr/bin/cc cc /usr/bin/gcc
sudo update-alternatives --set cc /usr/bin/gcc
sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++
sudo update-alternatives --set c++ /usr/bin/g++

4.2 安装cuda

在cuda所在目录打开terminal依次输入以下指令:

cd  /home/***(自己的用户名)/Desktop/###(这个命令意思是找到刚刚我们用U盘传过来的文件)
sudo dpkg -i cuda-repo-ubuntu1604-8-0-rc_8.0.27-1_amd64​.deb
sudo apt-get update
sudo apt-get install cuda

4.3 安装cuDNN

打开terminal依次输入以下指令:

cd  /home/***(自己的用户名)/Desktop/                     #(这个命令意思是找到刚刚我们用U盘传过来的文件)
tar xvzf cudnn-8.0-linux-x64-v5.1-ga.tgz #(解压这个文件)
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*

或者直接执行以下命令,就不需要复制

sudo tar -xvf cudnn-8.0-linux-x64-v5.1.tgz -C /usr/local 

4.4 安装其他依赖

4.4.1 配置环境变量

按照上图的教程,在terminal中输入以下命令:
sudo gedit ~/.bash_profile #打开.bash_profile

然后在打开的文本末尾加入:

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64"
export CUDA_HOME=/usr/local/cuda

继续在terminal中输入:

source ~/.bash_profile #使更改的环境变量生效

当然,也有其他教程在文件~/.bashrc文件中写入的,方法与上面的类似。如果在后面配置./config文件出现问题时,可以实现这个方法。

4.4.2 配置环境变量

在terminal中输入以下命令:

sudo apt-get install python-pip python-dev 

pip install --upgrade pip

5. 安装Bazel

方案一:

Using Bazel custom APT repository (recommended)

1. Install JDK 8

If you are running Ubuntu Wily (15.10), you can skip this step. But for Ubuntu Trusty (14.04 LTS) users, since OpenJDK 8 is not available on Trusty, please install Oracle JDK 8:

$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java8-installer

Note: You might need to sudo apt-get install software-properties-common if you don't have the add-apt-repositorycommand. See here.

2. Add Bazel distribution URI as a package source (one time setup)

$ echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
$ curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add -

If you want to use the JDK 7, please replace jdk1.8 with jdk1.7 and if you want to install the testing version of Bazel, replace stable with testing.

3. Install and update Bazel

$ sudo apt-get update && sudo apt-get install bazel

Once installed, you can upgrade to newer version of Bazel with:

$ sudo apt-get upgrade bazel

方案二:

5.1 安装Bazel依赖

由于本教程使用tensorflow源码编译/安装,所以需要使用 bazel build。

链接:https://www.bazel.io/versions/master/docs/install.html 

在terminal中依次输入以下1-7的命令

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
curl https://bazel.io/bazel-release.pub.gpg | sudo apt-key add -

5.2 安装Bazel

之后回到之前的Tensorflow安装教程页面:https://github.com/tensorflow/tensorflow/blob/master/tensorflow/g3doc/get_started/os_setup.md

点击链接: installer for your system,跳转到Bazel的下载页面:

下载bazel-0.3.2-installer-linux-x86_64.sh到桌面,然后在terminal中输入以下命令

cd  /home/***(自己的用户名)/Desktop/                  #(这个命令意思是找到刚刚我们用U盘传过来的文件)
chmod +x PATH_TO_INSTALL.SH #对.sh文件授权
./PATH_TO_INSTALL.SH --user #运行.sh文件

5.3 安装第三方库

在terminal中输入以下命令

sudo apt-get install python-numpy swig python-dev python-wheel #安装第三方库
sudo apt-get install git

6. 安装tensorflow

6.1 下载tensorflow

在terminal中输入以下命令

git clone https://github.com/tensorflow/tensorflow

特别注意,我使用的是tensorflow 0.11版本,该版本要求cuda 7.5 以上,cuDNN v5。 
默认下载目录是在/home下

6.2 配置tensorflow

还是刚刚的网址 
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/g3doc/get_started/os_setup.md

在terminal中输入以下命令:

cd ~/tensorflow                        #切换到tensorflow文件夹
./configure #执行configure文件

然后按照下图选项进行操作:

6.3 创建pip

在terminal中输入以下命令:

bazel build -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_package
bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
sudo pip install --upgrade /home/***(你自己的用户名)/Desktop/tensorflow-0.11.0rc1-cp27-none-linux_x86_64.whl

6.4 设置tensorflow环境

bazel build -c opt //tensorflow/tools/pip_package:build_pip_package
# To build with GPU support:
bazel build -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_package
mkdir _python_build
cd _python_build
ln -s ../bazel-bin/tensorflow/tools/pip_package/build_pip_package.runfiles/org_tensorflow/* .
ln -s ../tensorflow/tools/pip_package/* .
python setup.py develop

说明:在编译可能需要花费很长时间,慢慢等就行了,或许我的电脑配置太低,等了大半天才编译完。

此时恭喜你,已经完成了安装

7. 测试tensorflow

这里进行测试,如果你能跟我看到同样的画面,那恭喜你成功配置GPU版的tensorflow啦!

$ cd tensorflow/models/image/mnist
$ python convolutional.py

8. 常见问题

8.1循环登录

在ubuntu14.04安装N卡驱动后,会出现无法显示登录界面或者循环登录的问题。这主要是显卡不兼容,具体解决思路可以参考google上的解决方案,关键词 ubuntu login loop。 
经过测试,网上的教程对我都不适用,无奈转向ubuntu16.04

8.2 缺少第三方库

因为这个教程是我安装成功之后写的,其中难免遗忘某些库的安装,例如Git、pip这些库,安装过程很简单,具体可以google。

8.3 tensorflow配置问题

在执行./configure 或者设置tensorflow环境时,如果出现无法找到某个库的路径,那么检查是否正确的设置了cuda的环境变量,具体参考 4.1节。

8.4 在测试时提示unable to load cudnn dso

  在使用 ll 命令查看/usr/local/cuda/lib64中的文件和原cuda/lib64文件时发现不一致,可能是在copy过程中出现问题。解决办法。

在/usr/local/cuda/lib64文件夹中执行以下命令

sudo rm libcudnn.so. libcudnn.so

sudo ln -sf libcudnn.so. libcudnn.so

sudo ln -sf libcudnn.so.5.1. libcudnn.so. 

再进行测试,可以看到

>>> import tensorflow as tf
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:125] successfully opened CUDA library libcurand.so locally

说明一切成功。

说明:转载自

http://blog.csdn.net/zhaoyu106/article/details/52793183

ubuntu16.4搭建tensorflow环境的更多相关文章

  1. TensorFlow笔记-02-Windows下搭建TensorFlow环境(win版非虚拟机)

    TensorFlow笔记-02-Windows下搭建TensorFlow环境(win版非虚拟机) 本篇介绍的是在windows系统下,使用 Anaconda+PyCharm,不使用虚拟机,也不使用 L ...

  2. 在ubuntu16上搭建rabbitMQ环境

    在ubuntu16上搭建rabbitMQ环境 安装rabbitMQ apt-cache pkgnames | grep rabbitmq apt-get install rabbitmq-server ...

  3. TensorFlow(1):使用Docker镜像搭建TensorFlow环境

    1,关于TensorFlow TensorFlow 随着AlphaGo的胜利也火了起来. google又一次成为大家膜拜的大神了.google大神在引导这机器学习的方向. 同时docker 也是一个非 ...

  4. Ubuntu中的Docker搭建Tensorflow环境

    一.docker环境安装 1)更新.安装依赖包 sudo apt-get update sudo apt-get install apt-transport-https ca-certificates ...

  5. windows 10 环境下 使用Anaconda搭建 TensorFlow 环境

    ##大致步骤 1 安装Anaconda 2 在Anaconda中建立虚拟TensorFlow的虚拟环境 建立虚拟环境的命令是 conda  create -n tensorflow python=3. ...

  6. Windows10下搭建TensorFlow环境

    转载请注明源出处:http://www.cnblogs.com/lighten/p/6753695.html 这篇文章介绍了一下在Windows上安装TensorFlow的步骤,主要是翻译了一下官方的 ...

  7. win7搭建TensorFlow环境

    官网安装指南地址:https://www.tensorflow.org/install/pip 安装过程碰到的问题: 1.创建虚拟环境 virtualenv --system-site-package ...

  8. TestLink+Jenkins在Ubuntu16.04搭建集成测试环境

    序章 序1:TestLink和TestLink-API-Python-client 目前TestLink的最新版本是1.9.19 TestLink-API-Python-client支持的TestLi ...

  9. 利用Anaconda搭建TensorFlow环境并在Jupyter Notebook使用

    打开Anaconda Prompt 创建一个tensorflow 虚拟环境:conda create -n tensorflow python=3.6 激活tensorflow虚拟环境activate ...

随机推荐

  1. springboot h2数据库的配置

    配置文件 #h2 数据库配置 #配置数据库连接地址spring.datasource.url=jdbc:h2:sunniwell:sos#配置数据库驱动spring.datasource.driver ...

  2. 如何:使用TreeView控件实现树结构显示及快速查询

    本文主要讲述如何通过使用TreeView控件来实现树结构的显示,以及树节点的快速查找功能.并针对通用树结构的数据结构存储进行一定的分析和设计.通过文本能够了解如何存储层次结构的数据库设计,如何快速使用 ...

  3. mssql2008R2 RCU-6083:ALTER database FWC SET READ_COMMITTED_SNAPSHOT ON

    RCU-6083:失败 - 检查所选组件的先决条件要求:MDS 有关详细资料, 请参阅 E:\Setup\ofm_rcu\rcu\log\logdir.2014-11-27_12-39\rcu.log ...

  4. [Algorithm] Count Negative Integers in Row/Column-Wise Sorted Matrix

    // Code goes here function countNegative (M, n, m) { count = ; i = ; j = m - ; && i < n) ...

  5. Android图片与缩略

    /** * 将图片文件原比例缩略.并使其不超过最大宽.高 * @param path : 图片文件 * @param requestW : 缩略后最大宽度 * @param requestH : 缩略 ...

  6. 在陌生Linux环境查看Tomcat服务的方法

    1.查看Tomcat进程 执行命令$ps -ef|grep tomcat 你就能找出tomcat占据的进程号,当然这要求tomcat启动了. # ps -ef | grep tomcatroot    ...

  7. linux下线刷硬盘

    Linux系统往往有添加磁盘不够的情况,这时就需要添加新的硬盘.一般情况下需要重启服务器,这里我们来使用线刷方式读取Linux新增硬盘 1.添加磁盘后fdisk -l磁盘没有显示 2.查看主机总线号 ...

  8. data directory "/var/lib/postgres/data" has group or world access

    直接拷贝完好的data至pg目录底下,可能引起下面的错误:说data目录权限不是700.FATAL: data directory "/var/lib/postgres/data" ...

  9. 在网页浏览器中原生显示PDF文件

    在网页中直接显示pdf格式的文件方便阅读.但是如果文件较大加载速度会很慢,另外如果客户端没有安装pdf阅读插件的话,也就看不了了. 这种方式的好处就是不需要转换,直接显示,而且在加载时(高级的浏览器, ...

  10. 算法笔记_122:蓝桥杯第七届省赛(Java语言A组)试题解答

     目录 1 煤球数目 2 生日蜡烛 3 搭积木 4 分小组 5 抽签 6 寒假作业 7 剪邮票 8 取球博弈 9 交换瓶子 10 压缩变换   前言:以下试题解答代码部分仅供参考,若有不当之处,还请路 ...