由于我的CUDA是10.2的,非常新的版本,而NVIDIA驱动是比较旧的384。所以会导致cuDNN测试mnistDNN时会报错说驱动版本太旧。
这个时候我们只需要更新驱动。
1.首先要卸载之前低版本的驱动。
在终端输入:sudo apt-get purge nvidia*
然后输入:nvidia-smi
如果没有信息显示,说明卸载成功。进行下一步。
2.在官方NVIDIA驱动程序下载最新版本的430.26
然后在下载目录下打开终端输入:
sudo sh NVIDIA-Linux-x86_64-430.26.run
会报错说distributed pre-... fail!这是因为我们要先禁用Ubuntu自带的驱动程序nouveau,才能安装NVIDIA的驱动程序。
网上很多教程说要编辑配置文件blacklist.config,但是我们不需要那么麻烦,因为430.26的安装程序很智能,我们在刚才报错distributed pre-... fail!时点击continue,它会弹出是否要帮你禁用nouveau,我们选择是就好。然后他就会让我们重启。
我们reboot重启。
3.重启后,我们再来一次:
sudo sh NVIDIA-Linux-x86_64-430.26.run
进入安装界面,没有distributed pre-... fail!了。然后按照提示安装即可。
4.最后我们看一下是否安装成功:
nvidia-smi
看到:
就表示安装成功啦。
可以看到Driver Version:430.26 , CUDA Version:10.2
我们接着测试一下cuDNN现在是否可用:
进入/cudnn_samples_v7/mnistCUDNN目录
在终端输入:./mnistCUDNN
出现Test passed!即可。
就这样,我们就更新成功NVIDIA驱动程序,并且没有再跟CUDA 和 cuDNN 冲突啦!