Ubuntu 16.04 GPU 深度学习环境搭建
2019-06-23 本文已影响0人
duan22677
一 禁用 nouveau 驱动
-
打开文件:
$ sudo vim /etc/modprobe.d/blacklist.conf
-
在末尾添加:
blacklist nouveau
-
更新内核:
$ sudo update-initramfs -u
-
重启系统, 使用
lsmod
命令查看是否禁用成功$ lsmod | grep nouveau
若没有输出内容,则是禁用成功.
二 安装 NVIDIA 驱动
官网根据显卡型号下载驱动
-
按
ctrl
+alt
+F1
进入命令行模式, 输入用户名和密码登录 -
关闭图形界面服务
$ sudo service lightdm stop
-
先卸载旧驱动
$ sudo apt purge nvidia*
-
进入到NVIDIA驱动所在目录,安装驱动
$ cd ./nvidia # 进入到下载的驱动程序所在目录 $ ls # 查看目录下的文件 $ NVIDIA-Linux-x86_64-410.66.run # ls 命令后,显示的驱动文件 $ sudo chmod 755 NVIDIA-Linux-x86_64-410.66.run # 获取权限 $ sudo sh ./NVIDIA-Linux-x86_64-410.66.run # 安装驱动
-
驱动安装完成后,启动图形界面服务
$ sudo service lightdm start
ctrl
+alt
+F7
返回登录(上面命令执行后会自动进入图形化登录界面)
-
查看显卡驱动等信息
nvidia-smi.png$ nvidia-smi
三 安装 CUDA
-
下载 CUDA Toolkit 安装包:(截止到安装时,Tensorflow GPU不支持 CUDA10, 所以选择安装 CUDA9)
image image image -
下载完成后输入命令安装即可(下载选项中也有说明如何安装)
$ sudo sh cuda_9.0.176_384.81_linux.run
-
执行安装命令后,有一堆条款说明啥的,可以
ctrl
+c
跳过,之后是一些选项:Do you accept the previously read EULA? # accept 接受 accept/decline/quit: accept Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.81? # 选否 (y)es/(n)o/(q)uit: n Install the CUDA 9.0 Toolkit? #yes (y)es/(n)o/(q)uit: y Enter Toolkit Location # 默认 [ default is /usr/local/cuda-9.0 ]: Do you want to install a symbolic link at /usr/local/cuda? # yes (y)es/(n)o/(q)uit: y Install the CUDA 9.0 Samples? # 可装可不装(可以先选yes,然后用不到了再删除) (y)es/(n)o/(q)uit: y Enter CUDA Samples Location [ default is /home/duane ]:
-
安装成功后,添加环境变量
$ vim ~/.bashrc # gedit ~/.bashrc # 图形界面可以使用 gedit 更方便
-
在打开的文件中末尾添加:
# CUDA export PATH=/usr/local/cuda-9.0/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64:$LD_LIBRARY_PATH
-
保存并关闭文件,终端输入
$ source ~/.bashrc
使环境生效.
可使用 nvcc -V
命令查看是否配置成功
四 安装 cuDNN
-
下载cuDNN,下载之前需要注册Nvidia开发者帐号,按要求注册即可。
-
注册登录后,选择与CUDA对应版本的 cuDNN
image -
下载完成后,进入下载目录
$ tar xvzf cudnn-9.0-linux-x64-v7.4.2.24.tgz $ sudo cp cuda/include/cudnn.h /usr/local/cuda-9.0/include $ sudo cp cuda/lib64/libcudnn* /usr/local/cuda-9.0/lib64 $ sudo chmod a+r /usr/local/cuda-9.0/include/cudnn.h /usr/local/cuda-9.0/lib64/libcudnn*