Ubuntu16.04(GTX1660ti)cuda10.0和cudnn7.6环境配置
(环境乃一生之敌!!!)
第一项:安装显卡驱动
1.下载显卡驱动,到https://www.nvidia.com/Download/index.aspx下载相应的驱动。
(相应驱动指的是和你的计算机所匹配的驱动,可在win下使用DxDiag查看)
2.查看cuda和驱动版本要求:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html (着重看表格的版本要求就行)
(2020.10.12更新:不需要查看!后续安装好显卡驱动,使用命令nvidia-smi查看,右上角的CUDA Version即是但前显卡驱动所支持的CUDA最高版本!)
3.开始安装驱动
-
检测相应的内核文件:
-
sudo apt-get install linux-headers-$(uname -r)
-
编辑/etc/modprobe.d/blacklist.conf 禁止第三方驱动:
-
sudo vim /etc/modprobe.d/blacklist.conf
-
(如果未安装vim,直接改用gedit)
-
在打开的文档末尾,加上下面两行代码:
-
blacklist nouveau
-
options nouveau modeset=0
-
更新内核!!!(极其重要!!!):
-
sudo update-initramfs -u
-
重启:
-
reboot
-
检测第六步添加的两行代码是否成功(下面的命令没有输出即表示成功)
-
lsmod | grep nouvea
-
(本人就牺牲于此处,主要是添加代码后没有更新内核所致,故强调一定要更新内核)
-
通过ctrl+alt+f2进入终端
-
(踩坑指南:此处密码输入一定不要用小键盘,请使用主键盘上面的数字键)
-
登入账户,通过下面命令关闭图像界面:
-
sudo service lightdm stop
-
切换到你下的nvidia driver目录 然后执行 :
-
sudo bash NVIDIA-Linux-x86_64-450.80.02.run -no-opengl-files
-
(踩坑指南:请在上一条命令行加入-no-x-check)
-
(其中,需要将版本号更改为你下载的对应的版本号)
-
(有一处x config?还是啥记不太清了,选择no!)
-
装完就可以执行下面的命令开启图像界面:
-
sudo service lightdm start
-
执行下面命令,查看驱动是否安装成功:
-
nvidia-smi
-
-
如果出现表格信息则表示安装成功
第二项:安装CUDA10.0
2020.10.10修改:第一步进去好像不再提供旧版本下载,入口我也没再找到,所以提供一个旧版本下载地址的合集:
https://docs.nvidia.com/cuda/
- 进入到cuda下载页面https://developer.nvidia.com/cuda-downloads
- 官网默认是10.1的版本,所以我们选择Legacy Release 再选择CUDA Toolkit 10.0,然后选择和自己系统相匹配的配置(最下方选择runfile(local)),点击下载。
- 下载完成后,执行:
sudo sh cuda_10.0.130_410.48_linux.run
- 注意,在弹出界面按住enter直到进度到达100%。然后是accept。除了驱动Driver选择n(no),其他全部选择y(yes)。
- 安装完成后,会在home目录下生成一个NVIDIA_CUDA-10.0_Samples的样例,cd进入这个目录(或者进入该目录后点击在终端打开),执行编译:
make -j8
- 编译完成后,执行一下命令:
cd bin/x86_64/linux/release/
./deviceQuery
- 如果最后的出现result = pass 即表示样例通过
- 接下来进行环境变量的设置
- 在用户目录下的.bashrc文件写入环境路径
vim ~/.bashrc
- (如果未安装vim,直接改用gedit)
- 在文件的最后写入如下路径:
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda/bin:$PATH
- 然后载入配置:
source ~/.bashrc
nvcc -V
查看版本,如果出现版本信息则表示配置成功
第三项:安装cuDNN
- 进入官网https://developer.nvidia.com/cudnn
- 点击download cuDNN
- (需要注册才能下载,老老实实注册吧)
- 接下来的选项随意选择,然后点击download,接受条件,选择for CUDA 10.0然后选择cuDNN Library for Linux下载即可。
- (将得到cudnn-10.0-linux-x64-v7.6.x.xx.tgz)
- 下载完成后,进行解压:
tar -zxvf cudnn-10.0-linux-x64-v7.6.x.xx.tgz
- 执行下面的命令,把cudnn的头文件和库拷贝到cuda下的include和lib64下:
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
//2020.10.15更新
sudo cp cuda/lib64/* /usr/local/cuda-10.0/lib64/
sudo cp cuda/include/* /usr/local/cuda-10.0/include/
-
检测是否安装成功(最简单的方法):
-
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
-
-
(输出相应信息表示成功!)
-
(2020.10.12更新:建议使用后面的科学测试方法!)
-
目前已经基本完成安装。
-
后续添加:测试cuDNN的科学办法!
-
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.7
sudo ln -s libcudnn.so.7.6.x libcudnn.so.7
sudo ln -s libcudnn.so.7 libcudnn.so
sudo ldconfig
- 下载cuDNN下载界面下面的对应系统版本的三个测试包:
libcudnn7_7.6.5.32-1+cuda10.0_amd64.deb
libcudnn7-dev_7.6.5.32-1+cuda10.0_amd64.deb
libcudnn7-doc_7.6.5.32-1+cuda10.0_amd64.deb
- 安装
sudo dpkg -i libcudnn7_7.6.0.64-1+cuda10.0_amd64.deb
sudo dpkg -i libcudnn7-dev_7.6.0.64-1+cuda10.0_amd64.deb
sudo dpkg -i libcudnn7-doc_7.6.0.64-1+cuda10.0_amd64.deb
(2020.10.12更新:上述三个安装包一定要按顺序安装,或者至少一定要先安装第一个。还有后续的cudnn的doc好像变成了samples,不重要,复制就行)
21. 测试
cp -r /usr/src/cudnn_samples_v7/ /home/cudnntest
(这一句的v7根据你下载的版本进行更改!)
cd /home/cudnntest/cudnn_samples_v7/mnistCUDNN
sudo make clean
sudo make
./mnistCUDNN
- 显示
Test Passed!
即表示成功!