RuntimeError:cuDNN error:CUDNN_STATUS_EXECUTION_FAILED

背景

最近在服务器上跑Deeplabv3进行语义分割时,需要使用GPU版的pytorch。
我在Anaconda下配置了适配服务器CUDA的pytorch,但是报错如下,(下图无限接近于我的错误,但是我忘记截图我的报错了,所以用了下面这张网图)
在这里插入图片描述
可以看到每次报错都在 conv.py 这个文件,就是在做 CNN 运算时出的错。

解决方法

引入如下语句

torch.backends.cudnn.enabled = False

这句代码的意思是不用 cudnn 加速了。

GPU,CUDA,cuDNN 的关系是:

CUDA 是 NVIDIA 推出的用于自家 GPU 的并行计算框架,只能在 NVIDIA 的GPU 上运行,而且只有当要解决的计算问题是可以大量并行计算的时候才能发挥 CUDA 的作用。
cuDNN 是 NVIDIA 打造的针对深度神经网络的加速库,是一个用于深层神经网络的 GPU 加速库。如果你要用 GPU 训练模型,cuDNN 不是必须的,但是一般会采用这个加速库。

cuDNN 默认会使用,既然目前解决不了匹配问题,就先不用了。这样 GPU照样能工作,但可能没有用上 cuDNN 那么快。

加上了上面的代码,cuDNN的问题解决了!!!

但是来了新的报错:RuntimeError: cublas runtime error : the GPU program failed to execute at /tmp/pip-req-build-cbsmv48q/aten/src/THC/THCBlas.cu:259

解决办法

1.卸载掉之前装好的torch和torchvision(之前是使用官网的命令:

conda install pytorch==1.1.0 torchvision==0.3.0 cudatoolkit=9.0 -c pytorch

安装的torch和torchvision)
现在需要卸载掉,卸载命令如下:

pip uninstall torch
pip uninstall torchvision

2.使用pip安装指定版本的torch和torchvision
安装命令如下:

pip install torch==1.1.0
pip install torchvision==0.3.0

3.再次run,问题就解决了!!!

撒花撒花!!!

附录:

解决问题参考博客如下:
https://zhuanlan.zhihu.com/p/150581355
https://blog.csdn.net/weixin_41781121/article/details/109030372

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值