笔者的环境如下:
Ubuntu 16.04 64bit
NVIDIA 1050 Ti
Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz
我的安装包
NVIDIA-Linux-x86_64-410.93.run
cuda_8.0.61_375.26_linux.run
libcudnn7_7.4.2.24-1+cuda9.0_amd64.deb
libcudnn7-dev_7.4.2.24-1+cuda9.0_amd64.deb
libcudnn7-doc_7.4.2.24-1+cuda9.0_amd64.deb
一、安装NVIDIA显卡驱动
1. 禁用nouveau,在终端输入:
sudo gedit /etc/modprobe.d/blacklist.conf
在最后一行添加:
blacklist nouveau
保存退出,在终端执行命令:
sudo update-initramfs -u
reboot # 重启!
lsmod | grep nouveau #没有输出则说明配置成功
2. 安装驱动
Ctrl-Alt+F1进入命令行界面之后输入用户名和密码登录 ,找到驱动文件xxx.run所在目录(默认为当前用户目录的Downloads目录下)并赋予该文件可执行权限,然后进行安装:
cd Downloads
sudo chmod a+x xxx.run
sudo service lightdm stop #关闭图形界面
sudo ./NVIDIA-Linux-x86_64-410.93.run -no-nouveau-check -no-opengl-files
reboot
如果驱动安装报错,错误信息如下
ERROR: You appear to be running an X server; please exit X before installing.
原因是因为 X Server没有关闭,并且资源也被锁住了
sudo init 3
cd /tmp
sudo rm -r .X*
然后回去继续安装
二、安装NVIDIA CUDA Toolkit 9.0
1. 安装CUDA
Ctrl-Alt+F1进入命令行界面之后输入用户名和密码登录 ,找到CUDA9.0文件xxx.run所在目录(默认为当前用户目录的Downloads目录下)并赋予该文件可执行权限,然后进行安装:
cd Downloads
sudo chmod a+x xxx.run
sudo service lightdm stop #关闭图形界面
sudo ./cuda_8.0.61_375.26_linux.run
*注意:安装过程中当询问是否安装显卡驱动时选n,因为先前已安装完显卡驱动无需再进行安装。
2. 配置环境变量
sudo service lightdm start #开启图形界面
登录系统,打开终端:
sudo gedit /etc/profile
在最后添加:
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
保存退出,立即生效:
source /etc/profile
完成后重启。
3. 验证CUDA,打开终端输入:
nvcc -V
出现相应版本号信息则说明安装成功。
三、安装NVIDIA cuDNN 7.4
1.安装cuDNN
打开终端,找到cuDNN文件libcudnn7_7.4.2.24-1+cuda9.0_amd64.deb、libcudnn7-dev_7.4.2.24-1+cuda9.0_amd64.deb、libcudnn7-doc_7.4.2.24-1+cuda9.0_amd64.deb所在目录(默认为当前用户目录的Downloads目录下),进行安装:
sudo dpkg -i libcudnn7_7.4.2.24-1+cuda9.0_amd64.deb libcudnn7-dev_7.4.2.24-1+cuda9.0_amd64.deb libcudnn7-doc_7.4.2.24-1+cuda9.0_amd64.deb
若不报错则说明安装成功
然后复制文件
sudo cp /usr/local/cuda-9.0/lib64/libcusolver.so.9.0 /usr/local/lib/libcusolver.so.9.0 && sudo ldconfig
sudo cp /usr/local/cuda-9.0/lib64/libcudart.so.9.0 /usr/local/lib/libcudart.so.9.0 && sudo ldconfig
sudo cp /usr/local/cuda-9.0/lib64/libcufft.so.9.0 /usr/local/lib/libcufft.so.9.0 && sudo ldconfig
sudo cp /usr/local/cuda-9.0/lib64/libcurand.so.9.0 /usr/local/lib/libcurand.so.9.0 && sudo ldconfig
2. 验证cuDNN是否已安装并可以正常运行
复制cuDNN sample到当前用户目录下
sudo cp -r /usr/src/cudnn_samples_v7/ $HOME
进入cuDNN相应测试样本的路径:
cd $HOME/cudnn_samples_v7/mnistCUDNN
清理临时文件
sudo make clean
编译该测试样本:
sudo make
运行该测试样本:
./mnistCUDNN
若cuDNN安装并可正常运行则会出现:
Test passed!