从零开始配置深度学习服务器环境Ubuntu17.04+CUDA9.1+cnDNN7.0.5+TensorFlow1.4.1

更新:最新的TensorFlow1.5已经支持cuda9,可以直接pip 安装
卸载低版本的cuda方法

sudo apt-get remove cuda
sudo apt autoremove
sudo apt-get autoclean

一、装系统:Ubuntu 17.04

在拔出所有独显的裸机状态下,从U盘启动安装Ubuntu 17.04

  • 在安装之前,需要先按F2进入BIOS模式设置,修改以下两处:
  1. Advanced-SATA Operation: 改成AHCI

  2. Boot-Secure Boot: 改成Disabled

  • 重启,按F12进入U盘启动模式,按指示安装Ubuntu系统即可

二、NVIDIA显卡驱动

我是Ubuntu 17.04系统
  • 下载到本地后,打开终端,按官网指示步骤安装驱动
sudo dpkg -i nvidia-driver-local-repo-ubuntu1704-387.34_1.0-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda-drivers
reboot 
  • 大约需要一两个小时的安装时间,安装完成后断电插入独显(发现不插入独显重启会进入login的死循环),此时在终端输入nvidia-smi命令应正常显示显存信息。

三、安装CUDA 9.1

  • 同样是英伟达官网-开发者-CUDA-Download Now-选择network的deb版本,比较小,只有2.8kb。


  • 下载完deb文件之后按照官方给的方法按如下方式安装CUDA9:

sudo dpkg -i cuda-repo-ubuntu1704_9.1.85-1_amd64.deb
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1704/x86_64/7fa2af80.pub
sudo apt-get update
sudo apt-get install cuda
  • 大约需要一两个小时的安装时间。安装完成后,在终端查看cuda版本号cat /usr/local/cuda/version.txt,发现cuda 9.1.85 已经安装完毕。

四、安装cuDNN

cuDNN的全称为NVIDIA CUDA® Deep Neural Network library,是NVIDIA专门针对深度神经网络(Deep Neural Networks)中的基础操作而设计基于GPU的加速库。基本上所有的深度学习框架都支持cuDNN这一加速工具,例如:Caffe、Caffe2、TensorFlow、Torch、Pytorch、Theano等。

  • 同样前往NVIDIA官网:https://developer.nvidia.com/cudnn,选择cuDNN7。下载cuDNN之前需要先注册网站...以及填一大堆问题。

  • 下载完毕后解压到home目录,然后将相关文件拷贝到cuda安装目录下即可

tar -zxvf cudnn-9.0-linux-x64-v7.tgz
/*然后我手动移到了home目录下*/
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/ -d
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
  • 查看安装好的cuDNN版本号:cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
    显示如下,说明已经安装完毕,cuDNN的版本号为7.0.5
#define CUDNN_MAJOR 7
#define CUDNN_MINOR 0
#define CUDNN_PATCHLEVEL 5
--
#define CUDNN_VERSION    (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)

#include "driver_types.h"

五、安装TensorFlow1.4.1

  • 官方的tensorflow发行还不支持cuda9,所以我们找到了非官方的支持cuda9和cudnn7的预编译版,点这里选取对应版本下载,我找的是带mkl(需要提前安装好,见下面介绍),而且支持GPU的版本TensorFlow 1.4.1 (GPU, CUDA 9.1):tensorflow-1.4.1-cp27-cp27mu-linux_x86_64.whl

  • 下载完成后,就可以安装啦:

sudo apt-get install python-pip
pip install tensorflow-1.4.1-cp27-cp27mu-linux_x86_64.whl

或者则将pip换成pip3,使用python3版本的

  • 进入python环境确认TensorFlow已经装好:
python
>>>import tensorflow as tf
>>>tf.__version__
  • 这里补充介绍一下MKL。MKL是intel出的深度学习库,可以在CPU上极大的加速tensorflow的运行速度,虽然我们有GPU,但是CPU上加个速啥的也没坏处不是。
    MKL是需要编译的,所以我们需要安装一堆编译依赖库和工具:
sudo apt-get install git cmake doxygen
git clone https://github.com/01org/mkl-dnn.git
cd mkl-dnn
cd scripts && ./prepare_mkl.sh && cd .. #这一步需要耗费一点时间,主要是那个包有70MB,有点大。
mkdir -p build && cd build && cmake -DCMAKE_INSTALL_PREFIX=/home/$USER/.local .. && make
make install

安装完成后,在.bashrc里面加入下面这一行,不然会报找不到lib的错误:

echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/$USER/.local/lib' >> ~/.bashrc
source ~/.bashrc

六、安装常用库

sudo pip install pandas
sudo pip install keras
conda install pytorch
sudo pip install matplotlib
#安装librosa音频处理库
pip install librosa
sudo apt-get install ffmpeg #需要先安装ffmpeg作为支持

七、附录

PS:发现更换DP接口到显卡后,显示器经常没有输入信号,可以尝试先打开显示器,然后再开电脑

PPS:在安装之前做以下准备工作可以加速之后安装的下载

  1. 更新Ubuntu17.04的源
cd /etc/apt/
sudo cp sources.list sources.list.bak
sudo vi sources.list

把下面的这些源添加到source.list文件头部,这里用的是网易的源:

deb http://mirrors.163.com/ubuntu/ zesty main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ zesty-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ zesty-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ zesty-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ zesty-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ zesty main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ zesty-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ zesty-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ zesty-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ zesty-backports main restricted universe multiverse
  1. 将pip源指向清华大学的源镜像:https://mirrors.tuna.tsinghua.edu.cn/help/pypi/,具体在~/.config/下添加一个 .pip目录(文件夹前要加.,表示是隐藏文件),新建pip.conf文件,设置为:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

这两件事情都可以加速安装相关工具包的速度,事半功倍(虽然清华的源个人感觉不太稳定)。

参考文献:
http://www.52nlp.cn/深度学习服务器环境配置-ubuntu17-04-nvidia-gtx-1080-cuda-9-0-cudnn-7-0-tensorflow-1-3
http://www.cnblogs.com/dwsun/p/7767210.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,233评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,013评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,030评论 0 241
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,827评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,221评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,542评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,814评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,513评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,225评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,497评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,998评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,342评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,986评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,055评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,812评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,560评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,461评论 2 266