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

版权声明:本文为博主原创文章,未经博主允许不得转载。转载请注明文章来自http://blog.csdn.net/aaronjny https://blog.csdn.net/aaronjny/article/details/79330727

深度学习环境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吗? - 吕俊奇的回答 - 知乎

猜你喜欢

转载自blog.csdn.net/aaronjny/article/details/79330727
今日推荐