因为需要,所以需要安装CUDA10.0及对应的cudnn版本。
该教程是在前文ubuntu16.04安装nvidia显卡驱动的基础上进行的。显卡驱动安装的是440.82的版本,CUDA10.0需要最低驱动要求是410.48.所以完全满足。
具体流程如下:
1.CUDA10.0的安装
本文采用的是runfile的方式安装的,相比package manager,成功率更高。
1)安装包下载
首先下载CUDA的安装包:CUDA安装包下载根据自己的具体情况选择对应的版本,最后要选择runfile文件,然后点击Download如下图所示:
NVIDIA官网的下载速度真的很快,2个G一分钟不到就下好了。
下载完毕后,终端使用以下命令检测,序号不合重新下载
md5sum cuda_10.0.130_410.48_linux.run
2)进行安装
(1)禁用nouveay(在安装NVIDIA驱动的时候已经禁过了)
查看是否禁过:
lsmod | grep nouveau
如果没有输出,则已经禁过。如有有关nouveau的信息出现,那么请在禁一次,详细步骤见上文ubuntu16.04安装nvidia显卡驱动
注意:以下步骤会进入到字符界面,有两台电脑操作最好,或者用手机记录下面的过程,字符界面不能看到。另外可以将cuda_10.0.130_410.48_linux.run包改为cuda.run,并移动到home下,目的就是输入命令方便。
(2)字符界面进行安装
1)重启电脑,然后在登录界面不要着急输密码进入到桌面模式,直接按快捷键Ctrl+Alt+F1进入到字符界面(如果你桌面模式也能成功进入就不需要重启,直接快捷键进入)。
接着和上文一样的的登录界面,先输入账户名,再输入密码,登录成功。
2)输入命令关闭图形界面:
sudo service lightdm stop
3)运行命令进行安装:
sudo sh cuda.run
会显示用户许可证相关信息,最下面显示--More--(1%)然后需要你一直按空格,直到显示100%.
接着又会出现一些选择界面:
输入内容为:accept -> n ->y -> y ->y (没有选项就按回车)
重启图形界面:
sudo service lightdm start
我输入命令之后直接回到图形桌面形式,若没有回,快捷键Alt + ctrl +F7
(3)环境变量设置
终端命令:
sudo gedit ~/.bashrc
再打开的文件下面加上以下内容:
export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
验证驱动版本
cat /proc/driver/nvidia/version
验证CUDA版本
nvcc -V
(4)编译cuda历程测试
1)home目录下打开终端输入:
cd NVIDIA_CUDA-10.0_Samples
make
编译时间较长,稍等一会估计十来分钟。如果报错缺什么依赖就install下载下。
编译完成后,显示如下:
2)运行编译文件
在NVIDIA_CUDA-10.0_Samples/bin/x86_64/linux/release 文件下打开终端,或者直接cd进去。直接输入:
./deviceQuery
成功样图,其中 Result = PASS代表成功,若失败 Result = FAIL
3)最后再检查一下系统和CUDA-Capable device的连接情况终端输入 :
./bandwidthTest
看到类似如下图片中的显示,则代表成功
2.cudnn的安装
相比cuda,cudnn的安装就相对更简单,只需要下载对应版本的安装包,解压之后,用命令将某些文件复制到cuda的指定文件目录下 即可。
(1)文件下载
下载对应版本的安装包此处是对应CUDA10.0的:cudnn下载
我选择的当时最新版对应cuda10.0的v7.6.4,点进去后选择第三个cuDNN Library for Linux。
下载之后,可以直接手动解压即可。解压之后会有一CUDA文件夹,然后在Downloads目录下(我是直接在下载目录下解压)打开终端输入:
sudo cp cuda/include/cudnn.h /usr/local/cuda-10.0/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-10.0/lib64/
查看cudnn版本:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
此时就安装成功。
然后我立马下载了darknet框架下的yolov4测试了下,没有问题。测试流程:gpu测试YOLOV4
参考文献:
https://blog.csdn.net/lihe4151021/article/details/90237681