说明
本文记录本人解决 CUDNN_STATUS_EXECUTION_FAILED 报错的过程,纯流水式记账,可供参考。
问题描述
本人在使用 Pytorch Lightning 训练模型时,GPU 训练模型一直跑不起来。每次跑都会报不一样的错误,但每次最后一行的内容都是下面的报错信息:
RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED
运行环境为:
Python: 3.7
pytorch: 1.8.0+cu111
cuda: 11.1
网上的解决方案非常的多,总结起来主要就是:(1)检查 python pytorch cuda 之间版本的兼容性;(2)代码有bug;等等。发现最多的还是版本兼容性问题。
解决方案
本文先是排查了代码可能存在的bug,发现能够在 cpu 环境下训练起来,所以就断定代码逻辑上没有问题。看网上的各种解决方案,猜测可能是自己的版本也不兼容,但是照着网上的教程一顿操作之后,发现自己版本应该是匹配的。顿时就失去了方向。此时也刚好到了饭点,就去吃了个饭,吃饭的时候就一直在想。cpu 能跑起来,说明代码没问题,使用 pytorch lightning 跑 gpu 训练就跑不起来,说明可能 pytorch lightning 有问题。于是就想着先用 pytorch 自己处理训练部分代码,但是用 pytorch 自己处理训练的方法之前是能跑起来的,只不过在另一个 conda 环境下跑的。此时就想着会不会是 cuda 环境被变了,于是试着跑

本文记录了解决在PyTorchLightning中遇到的RuntimeError: cuDNNerror: CUDNN_STATUS_EXECUTION_FAILED问题,通过排查代码、版本对比和环境设置,发现最终是PyTorch版本1.9.0解决了问题,强调了版本兼容性的关键作用。
最低0.47元/天 解锁文章
2654

被折叠的 条评论
为什么被折叠?



