ubuntu16.04+keras+theano+GPU

xiaoxiao2021-02-28  98

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例子: 成功!

转载请注明原文地址: https://www.6miu.com/read-48470.html

最新回复(0)