1、查看cuda版本
# 法一:
nvcc -V
# 法二:
whereis cuda # 查看cuda路径
cat */cuda/version.txt # 通过上面查到的路径读取version文件
2、下载cudnn
链接:https://developer.nvidia.com/rdp/cudnn-archive
选择对应的版本:cuDNN Library for xxx,xxx为系统号(Linux (x86),Linux (Power), Windows..),linux通过arch
命令查看内核
3、安装cudnn
# 将下载的cudnn解压后,会有一个cuda文件夹,将里面的文件复制到已安装的cuda目录下,命令如下:
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*
# 进入cuda的lib64目录:对下面这些文件重新生成软链接
sudo rm -rf libcudnn.so libcudnn.so.8 # 删除原链接,因为路径可能存在变化,此链接无效,注意将数字修改为对应的版本号
sudo ln -s libcudnn.so.8.0.5 libcudnn.so.8
sudo ln -s libcudnn.so.8 libcudnn.so
sudo rm -rf libcudnn_ops_train.so libcudnn_ops_train.so.8
sudo ln -sf libcudnn_ops_train.so.8.0.5 libcudnn_ops_train.so.8
sudo ln -sf libcudnn_ops_train.so.8 libcudnn_ops_train.so
sudo rm -rf libcudnn_ops_infer.so libcudnn_ops_infer.so.8
sudo ln -s libcudnn_ops_infer.so.8.0.5 libcudnn_ops_infer.so.8
sudo ln -s libcudnn_ops_infer.so.8 libcudnn_ops_infer.so
sudo rm -rf libcudnn_adv_infer.so libcudnn_adv_infer.so.8
sudo ln -s libcudnn_adv_infer.so.8.0.5 libcudnn_adv_infer.so.8
sudo ln -s libcudnn_adv_infer.so.8 libcudnn_adv_infer.so
sudo rm -rf libcudnn_adv_train.so libcudnn_adv_train.so.8
sudo ln -s libcudnn_adv_train.so.8.0.5 libcudnn_adv_train.so.8
sudo ln -s libcudnn_adv_train.so.8 libcudnn_adv_train.so
sudo rm -rf libcudnn_cnn_infer.so libcudnn_cnn_infer.so.8
sudo ln -s libcudnn_cnn_infer.so.8.0.5 libcudnn_cnn_infer.so.8
sudo ln -s libcudnn_cnn_infer.so.8 libcudnn_cnn_infer.so
sudo rm -rf libcudnn_cnn_train.so libcudnn_cnn_train.so.8
sudo ln -s libcudnn_cnn_train.so.8.0.5 libcudnn_cnn_train.so.8
sudo ln -s libcudnn_cnn_train.so.8 libcudnn_cnn_train.so
# 配置cuda环境变量
vim ~/.bashrc # 打开文件,将下面两行代码添加在文件最后
export PATH=/usr/lib/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/lib/cuda/lib64
source ~/.bashrc # 使环境变量生效,需要在新打开的窗口中才有用,已打开的窗口中不起作用
# 查看版本号
cat **/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2