情况1:我在我的win10电脑上安装了cuda11.0和cuda9.2。
我运行的PyTorch的AlexNet程序时用到的是cuda9.2。
首先有几个一致性是得到统一的:
- cuda9.2和cudnn7的统一
- Torch, Torchvision和cuda,python版本的统一
- nvcc -V显示的是cuda9.2
- pytorch显示的是cuda9.2
- 系统变量里面只有cuda9.2的路径
结果却是:
在cmd和vscode中运行,什么错误都没得到。
在PyCharm中运行,得到了错误代码:Process finished with exit code -1073741819 (0xC0000005)
虽然参考了 https://blog.csdn.net/weixin_43898838/article/details/105751760 这个博主的博客,但是问题还是没有解决。
我破釜沉舟,直接重置了win10。
情况2:
我安装上了cuda9.2+cudnn7.6.5,然后安装上torch-1.2.0+cu92-cp37-cp37m-win_amd64.whl以及torchvision-0.4.0+cu92-cp37-cp37m-win_amd64.whl。
很失望的是,虽然我只是单cuda,其他东西都是正确的,然而连一个mnist的示例代码都跑不了。
结果又是:
在cmd和vscode中运行,什么错误都没得到。
在PyCharm中运行,得到了错误代码:Process finished with exit code -1073741819 (0xC0000005)
image.png
测试了一下,跟情况1是一样的,程序走到loss.backward()的时候突然跳出,没有报任何的错误信息。
很离谱的事情是,我今天按照博客https://www.cnblogs.com/xuechengmeigui/p/12417137.html还测试了torch中cudnn的程序,是可以的。
所以这样一来这个错误就很致命了,根本不是cuda和cudnn的事情。。
因此我打算舍弃win10,用linux来跑深度学习了。
翌日更新:换到ubuntu系统上跑,同样的配置,没有问题了!
image.png
网友评论