cudnn版本要和cuda版本对应,有官方文档,但不是一一对应
1安装cuda
Ubuntu18.04安装cuda10.0_qq_39429669的博客-CSDN博客
2安装cudnn
官网下载:cuDNN Archive | NVIDIA Developer
需要登陆账号,没有可以直接创建
去网盘下载:参考链接1
默认路径为Downloads文件夹
解压(选择此版本,考虑了后续tensorflow的安装,虽然虚拟环境中的tensorflow好像可以不用考虑系统安装的cudnn版本)
tar -xzvf ~/Downloads/cudnn-10.0-linux-x64-v7.4.2.24.tgz
然后将解压内容拷贝到系统目录,并修改访问权限。
sudo cp ~/Downloads/cuda/include/cudnn.h /usr/local/cuda/include sudo cp ~/Downloads/cuda/lib64/libcudnn* /usr/local/cuda/lib64 sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
验证是否安装成功:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
验证cuDNN是否安装成功,去网盘下载:cudnn_samples_v7.tar.gz,并解压
tar -xzvf ~/Downloads/cudnn_samples_v7.tar.gz
将cudnn_samples_v7文件夹拷贝到~目录
cp -r ~/Downloads/cudnn_samples_v7 ~/
进入mnistCUDNN,编译并运行
cd ~/cudnn_samples_v7/mnistCUDNN make clean && make ./mnistCUDNN
如果安装成功,会出现Test passed!
如果提示./mnistCUDNN: error while loading shared libraries: libcudart.so.10.0: cannot open shared object file: No such file or directory
是库文件路径引发的问题,可以到/etc/ld.so.conf.d目录下,可以自建一个.conf文件(这里建立了cuda.conf),也可以修改其中任意一份conf文件,将lib所在目录写进去。
cd /etc/ld.so.conf.d/ sudo touch cuda.conf sudo gedit cuda.conf
在cuda.conf中添加:
/usr/local/cuda/lib64
然后运行:
sudo ldconfig
如果提示:/sbin/ldconfig.real: /usr/local/cuda/lib64/libcudnn.so.7 is not a symbolic link
说明libcudnn.so.7是一个文件,它本应是一个符号连接。运行
sudo ln -sf /usr/local/cuda/lib64/libcudnn.so.7.6.5 /usr/local/cuda/lib64/libcudnn.so.7
可以解决