异常信息:CUDA driver version is insufficient for CUDA runtime version

这个异常可能会出现在任何深度学习框架中,当遇到这个问题时,根据字面意思,我们可以推敲出来是 CUDA的驱动版本和CUDA的运行版本不一致造成的,并不是显卡驱动有问题,这个需要注意下,显卡是硬件,这个报的错误明显是软件问题。那么关于CUDA 驱动版本和运行版本的区别,您可以借鉴这篇博文很详细点击即可

这里要插入几个常用的Linux命令:
nvcc --version # 得到cuda驱动的版本
nvidia-smi #查看自己的显卡驱动,或者型号信息
我出现这个异常是在Centos7系统上的 Pytorch 框架下,在网上查阅了很多资料,发现自己CUDA驱动和 Pytorch 的版本是一致的,具体测试过程可以看以下命令[提前需要配置好Pytorch,如果没有,可以参照该链接
import torch
# 输出cuda版本,和 nvcc --version 一致
print(torch.version.cuda)
#这个函数只要输出的是 True 就说明 CUDA版本和 Pytorch 版本适配
#如果为 False ,需要您下载适合CUDA 和 Pytorch 互相适配的版本进行安装
print(torch.cuda.is_available())

接下来,如果以上测试最后一行程序为False,意味着你需要更换 Pytorch 去适配 CUDA版本,或者直接更换CUDA版本适配Pytorch 当然前者是更安全的选择,这个主要根据您的情况去选择,那么如果您想要更换CUDA 和 Pytorch 版本 均可以参考我的博文点击进入。如果你摸清楚了我分享的链接里的一些步骤,其实到现在基本可以解决这个问题了。【下面的你也要看一下,可以帮你加深理解!】

另外,说一些和 CUDA 和 cuDNN 相关的东西,我们知道CUDA 可以实现GPU的粗加速,cuDNN是专门针对神经网路而定义的加速程序,两者功能是互不影响的,也就是说,你的环境下,可以只装CUDA 不用装 cuDNN也不影响你的操作,甚至两者都不装,其实也不影响计算,不过就是速度快慢不一样。
原因分析:

关于以上说CUDA 和 cuDNN 互不影响的例子,其实我们在cuDNN的安装过程中可以得到,cuDNN的安装过程为:
来源于官网
以上图来源于安装cuDNN的官方网站,我们可以看到,它在安装过程中,是将解压的文件,直接复制到了 cuda 的文件夹中去,相当于为 原cuda的计算包,增添了cuDNN的一些内容,所以两者是互不影响的。
当然,如果是学校或者公司的服务器,是可以在你分配账号的那个空间上配置自己的CUDA和 cuDNN的,官方的都是在根目录下操作,即有(root权限),但是你也可以在自己的小空间上安装,不用加 su 或者 sudo 即可,但要注意配置合适的路径。这个还是参考我的一篇博文,这里附上链接点击进入

最后还一定要注意使用 Anaconda 安装时,注意安装 cudatoolkit 包,这个包要 cuda 版本一致,只有这 样才会让程序不会出错!
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐