您的位置:首页 > 运维架构 > Linux

deepin linux 15.5 + 小米笔记本pro 下的深度学习环境tensorflow-gpu 1.4版本搭建过程

2018-02-16 21:35 981 查看

深度学习环境tensorflow-gpu 1.4安装过程记录

换了个小米笔记本用来办公,内置win10,因为硬盘容量较小,搭建linux双系统的想法只好暂时搁置,忍着用了几个月。

前几天买了块硬盘,升级了一下笔记本,这下终于可以装上双系统了,程序猿还是觉得linux用起来舒服啊(打游戏除外…)= =

本来打算装ubuntu的,但是偶然间发现了国内团队做的deepin linux,感觉很赞啊,就用上了。程序猿嘛,接下来,就是开发环境的搭建了。于是,就有了这篇博文。

参数:

操作系统:Deepin Linux 15.5

笔记本: 小米笔记本pro

显卡:Nivdia MX150

tensorflow版本:1.4

cuda版本:8.0

cudnn版本:6

搭建过程中碰到了很多坑,中间有一次失败尝试导致系统出现异常,重装了系统。现总结正确安装方式,一来给自己备忘,二来给有需要的同学作为参考。

一、安装显卡驱动

用的是deepin 15.5系统,该系统提供驱动管理工具,可以很简单为显卡安装驱动。ubuntu系统提供的也有类似的工具,其他系统我不太熟悉,请自行研究。装驱动还是挺简单的,多搜一下就可以了。

下图是deepin的驱动管理工具,我为显卡安装了大黄蜂版的显卡驱动(bumblebee-nvidia和nvidia-driver),如下图,上面那个就是MX150的显卡驱动,下面那个是我的核显驱动,可以不用管它。



选中对应驱动,保存即可。

打开终端,在终端内输入以下命令:

sudo apt-get update
sudo apt-get install nvidia-smi


通过nvidia-smi,我们可以查看显卡信息,以确认我们的驱动是否正确安装了。在终端内输入:

optirun nvidia-smi


因为我们安装的是大黄蜂版的显卡驱动,所以显卡是由bumblebee进行管理的。为了降低能耗,平时独显是处于关闭状态的,如果有程序需要使用到独显,可以通过optirun进行启动。对于做深度学习训练这样可能太麻烦了,是有解决方法的,后面我会详细介绍。

如果显卡驱动安装正确,运行上面的命令,你会看到类似于下面的输出:



至此,驱动安装完成。

二、安装tensorflow-gpu

兼容原因,安装tensorflow-gpu 1.4版本。

很简单,如果没安装pip的话,要先安装pip:

sudo apt-get install python-pip


安装完成后,输入:

pip install tensorflow-gpu==1.4


即可完成tensorflow-gpu 1.4版本的安装。

需要注意的是,tensorflow-gpu版本需要完成cuda和cudnn的安装才能运行。这个时候的tensorflow是不能运行的,在python中输入
import tensorflow
会报错。

请往下读。

三、安装cuda

为了兼容,我们这里安装cuda 8。

网上找了很多教程,结果还是在这里卡了很久,因为很多都不适用。别人用起来正常,在我这里可能就出错了。最后,我选择了相当简单粗暴的一种方法:

打开终端,输入如下命令:

sudo apt install nvidia-cuda-dev nvidia-cuda-toolkit nvidia-nsight nvidia-visual-profiler


打完收工,安装完毕!

四、安装 cudnn

兼容原因,这里安装cudnn 6。

首先,从官网下载压缩包
cudnn-8.0-linux-x64-v6.0.tgz
。免费下载,需要登录,如无账号请自行注册。下载地址为https://developer.nvidia.com/cudnn

下载完成后得到压缩包:



对压缩包进行解压,得到一个名为cuda的文件夹。正常来说,我们需要将cuda中的一些文件复制到
/usr/local/cuda-8.0/***
的路径下,并配置相关路径。但这里,我们的做法有点不同。

因为,我们是用apt-get安装的,所以,我们是不存在
/usr/local/cuda-8.0/***
路径的,也不需要配置环境路径。但复制还是要复制的,不过位置变了一下,这里是第二个卡住我的问题点,找了很久,知乎的一位答友吕俊奇的回答给了我启发(回答的链接我会放到文末的参考中),这里要做如下操作:

第一,将解压出来的
cuda/include/
下的
cudnn.h
文件复制到
/usr/local/include/
目录下。

第二,将
cuda/lib64/
目录下的所有文件复制到python环境的tensorflow包的
tensorflow/python/
目录下,比如,对我来说该路径就是
/home/aaron/.local/lib/python2.7/site-packages/tensorflow/python
,这个路径因人而异,请参考我的路径自行查找。

五、测试

至此,安装全部完成。我们测试一下是否安装成功。

在测试之前,埋一下前面的坑。

关于bumblebee版显卡驱动在深度学习训练中的开启和关闭:

在进行训练前,在终端输入
sudo tee /proc/acpi/bbswitch <<< ON
,可开启显卡。

在训练结束后,在终端输入
sudo tee /proc/acpi/bbswitch <<< OFF
,可关闭显卡。

开启显卡在终端中打开python,并尝试引入tensorflow:

python
>>> import tensorflow as tf


如果没有安装成功,会报错。

如果没有报错,那说明安装的没有问题。继续输入:

>>> sess=tf.Session()


会输出显卡信息:



好了,恭喜,到了这里,你已经完成了全部内容,祝你好运!

参考

[1] Deepin15.4 下 CUDA 配置方法

[2] deepin15.5下安装tensorflow

[3] Ubuntu16.04无法安装CUDA吗? - 吕俊奇的回答 - 知乎
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: