Welcome To My Blog
实验室学姐让跑一个深度学习模型的程序,需要配置环境,查阅各种资料后安装成功,记录一下安装过程,确实挺刺激,也算是开启了自己的深度学习之旅了.
根据自己的系统和显卡型号直接在NVIDIA官网,我是64位ubuntu16.04,显卡是1070Ti,安装的驱动型号是390.67
在终端输入: sudo gedit /etc/modprobe.d/blacklist.conf
在最后一行添加:blacklist nouveau
改好后执行:sudo update-initramfs -u
重启后,在终端输入:lsmod | grep nouveau,没有输出则说明禁用成功
注销或重启进入登录界面,Ctrl+Alt+F1进入命令行模式(Ctrl+Alt+F7退出命令行模式)
禁用X服务:sudo /etc/init.d/lightdm stop
(注意,中文版的ubuntu,在命令行模式下汉字都是乱码,提前把驱动.run文件放在一个没有中文的路径下)
cd到下载目录,给下载的驱动.run文件赋予可执行权限:sudo chmod a+x NVIDIA-Linux-x86_64-390.67.run
安装:sudo ./NVIDIA-Linux-x86_64-390.67.run -no-opengl-files(只安装驱动文件,不安装OpenGL文件)
如果安装过程中出现 the distribution-provided pre-install script failed 继续安装即可
开启X服务:sudo /etc/init.d/lightdm start
Ctrl+Alt+F7退出命令行模式,重新入图形界面(未开启X服务不能进入图形界面),在终端输入:nvidia-smi,显示显卡信息则安装成功
从官网下载CUDA8.0,install type选择deb(local)
下载完成后进入安装包所在文件夹,依次执行下面三句命令进行安装(安装过程中不用安装NVIDIA Graphics Driversl了,已经安装过了,其余的均安装):
sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda
sudo gedit /etc/profile
在末尾加上两句
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64$LD_LIBRARY_PATH
安装时默认安装了测试用例,以deviceQuery为例
+ cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
+ sudo make
+ ./deviceQuery
+ 显示GPU信息则安装成功
从官网下载下面红框中的三个文件(需要用NVIDIA账号登录,用QQ登录即可):
进入安装包所在目录依次执行下面三句命令进行安装
sudo dpkg -i libcudnn6-doc_6.0.21-1+cuda8.0_amd64.deb
sudo dpkg -i libcudnn6-dev_6.0.21-1+cuda8.0_amd64.deb
sudo dpkg -i libcudnn6_6.0.21-1+cuda8.0_amd64.deb
安装时默认安装了测试用例,以/usr/src/cudnn_samples_v6为例
将这个例子复制到HOME中,执行: sudo cp -r /usr/src/cudnn_samples_v6/ $HOME
进入到HOME下: cd $HOME/cudnn_samples_v6/mnistCUDNN
进行编译: make make
执行脚本: ./mnistCUDNN
看到命令行输出 Test passed! 则安装成功
我用的是ubuntu16.04自带的python2.7,安装的是TensorFlow-gpu-1.4版本,在终端执行:
方法一:
sudo pip install tensorflow-gpu==1.4.0
方法二:
export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.4.0-cp27-none-linux_x86_64.whl
sudo pip install --upgrade $TF_BINARY_URL
import tensorflow as tf 时报错:ImportError: libcudnn.6: cannot open shared object file: No such file or directory
我的问题是:cuda的lib64文件夹中没有libcudnn.6这个文件,并且我安装的时cudnn7,看来tensorflow-gpu==1.4.0对应的是cudnn6,不过没关系,解决方法很简单
解决方法:
步骤1:在computer中搜索libcudnn,最后在/usr/lib/x86_64-linux-gnu中发现了libcudnn.so.7,将这个文件复制到/usr/local/cuda/lib64/中
步骤2:更新软连接:sudo ln -s libcudnn.so.7 libcudnn.so.6
(今天使用cudnn7训练时报错:Loaded runtime CuDNN library: 7201 (compatibility version 7200) but source was compiled with 6021 (compatibility version 6000),针对tensorflow-gpu==1.4.0还是下载cudnn6吧,更换成cudnn6就正常了 )