ubuntu16.04+keras+theano+GPU

1.安装ubuntu16.04
2.安装NVIDIA驱动
NVIDIA下载对应版本的驱动
在终端执行:

sudo sh NVIDIA-Linux-x86_64-378.13.run

结果出现了错误,如下图
这里写图片描述
解决办法:
(1)按Ctrl+Alt+F1,然后按照提示登录;
(2)输入:

sudo service lightdm stop

或者

sudo lightdm stop

杀死当前X server session
这里写图片描述

这里写图片描述
提示输入密码。
(3)输入

sudo init 3

进入完全多用户模式
(4)在保存驱动文件路径下执行驱动文件

sudo sh NVIDIA-Linux-x86_64-378.13.run

据说安装时拔掉网线,因为系统探测网络要花时间。
然后按照提示完成安装。
(5)安装成功后,输入

sax2 -r -m 0=nvidia

配置驱动,调整分辨率,保存。
(6)输入

reboot

重启。
3.安装CUDA
安装时按照步骤2的方式,在第(4)步时输入:

sudo sh cuda_8.0.61_375.26_linux.run

后,屏幕左下边出现%的进度条,按回车一直到100%.
出现如图:
这里写图片描述
这里要非常注意的一点是:在accept后,提示:
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 367.48?
(y)es/(n)o/(q)uit: n
不管是哪个版本的Driver,这儿一定要输入n。如果输入y,则会覆盖第二步安装的驱动。我第一次输入了y,后边就出问题。
最后出现下图就表示安装成功了。
这里写图片描述
如果不小行输入y怎么办。如下图:
这里写图片描述
按照提示信息:

To uninstall the CUDA Toolkit, run the uninstall scrip in /usr/local/cuda-8.0/bin #卸载CUDA
To uninstall the NVIDIA Driver, run nvidia-uninstall#卸载驱动

上图提示还有一个问题,
Missing recommended library: libGLU.so
Missing recommended library: libX11.so
Missing recommended library: libXi.so
Missing recommended library: libXmu.so
解决办法:安装相应的库就行,

sudo apt-get install freeglut3-dev build-essential libx11-dev
sudo apt-get install libxmu-dev libxi-dev libgl1-mesa-glx 
sudo apt-get install libglu1-mesa libglu1-mesa-dev

虽然安装成功,但还差一步,上图还提示了一个信息:
这里写图片描述
所以,我们要添加这两个路径到环境变量中,输入:

gedit ~/.bashrc

在最后输入:

export PATH="/usr/local/cuda-8.0/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH"

命令行输入:

nvcc --V #检测是否成功安装,如果输出版本号则表示安装成功

这里写图片描述
然后我们在终端输入:

nvidia-smi

可以看到:
这里写图片描述
当然还要测试一下,参考
这篇文章
检查我的都是5。
输入:

cd /usr/local/cuda/samples
sudo make all -j4
cd /usr/local/cuda/samples/bin/x86_64/linux/release
sudo ./deviceQuery

然后
这里写图片描述
显示PASS
到此CUDA安装成功。
4.安装KERAS,theano GPU加速
安装keras
输入:

conda install keras

会自带theano下载。
参照theano 文档theano文档
使用conda list查看相应的库有没有安装上,没有的话,自行安装。
文档中提到:
这里写图片描述
第一条已经在第二步完成;
第二条其实是第二步中添加到环境变量中的第二条;
第三条选最后一种办法,就是下边的theano配置文件中的[cuda]的内容。
因为keras默认是tensorflow后端,所以我们要修改后端。
在终端输入:

gedit ~/.keras/keras.json

如果没反应,前边加一个sudo

sudo gedit ~/.keras/keras.json

打开keras后端配置文件,
这里写图片描述
修改为
这里写图片描述
打开spyder,

import theano

结果没有显示GPU
发现还有个theano的配置文件没写,在终端输入:

sudo gedit ~/.theanorc

打开theano配置文件:
输入以下内容
这里写图片描述
在一次打开spyder,导入theano,出现GPU,但是又有问题:

Theano: CNMeM is disabled, CuDNN not available

对于 CNMeM is disabled,是因为在theano的配置文件里没写关于GPU内存的内容。则写入:lib就行
关于cnmem后的内容,如果写零点几,表示站内存的百分比:
这里写图片描述
如果写几百的话,表示直接分配多少M内存。写1可能会发生错误。
这里写图片描述
对于CuDNN not available,还差一步:
到NVIDIA官网上下载cudnn,要填问卷,注册,然后根据自己的电脑配置,下载相应的cudnn,下载后解压出一个cuda的文件夹,里边有两个文件夹,include 和 lib64,然后分别将里边的内容复制到安装cuda的相应文件夹,在终端输入:

sudo cp ~/cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp ~/cuda/lib64/libcudnn* /usr/local/cuda/lib64/

现在打开spyder
跑一个keras例子:
这里写图片描述
成功!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值