本文主要是介绍UserWarning:NVIDIA GeForce RTX 3060 Laptop GPU with CUD.......warnings.warn(incompatible_device_warn,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 问题描述
- 问题分析与解决
- 总结
- 参考资料
问题描述
调试环境时,报 UserWarning:NVIDIA GeForce RTX 3060 Laptop GPU with CUD
的错误,如下图所示:
问题分析与解决
从报错可以看出是 3060 的显卡和当前的 cuda 版本不适配。
因此打算换cuda的版本(我真是玛卡巴卡,老是有这种项目和cuda版本不适配的问题)。
我的显卡是 3060,cuda版本是 cuda11.5,项目 pytorch 版本是 pytorch1.8.1,经过查找资料在一个评论区看到说是 cuda11.1 与pytorch1.8.1适配,于是开始卸载重装cuda,将pytorch 11.5降到11.1。
经过一通漫长的操作,总算是将cuda版本给降到了11.1。
集体卸载与重装cuda的方法可以参考 参考资料[1][2],很详细,这里就不多赘述了。
于是,小胡怀着激动的心情,再次运行项目。
嘿,您猜怎么着,还是报同样的错误,我真是想死!
于是乎转换思路,是不是 pytorch 的问题,于是在 conda 环境里查了下,如下图所示:
可以看到是基于cuda10.2 的,我真是再次玛卡巴卡,于是想把cuda版本再降到10.2,不但又经历一次更换版本的过程,还会对其他用 cuda11 的项目造成影响。(当然可以管理多个cuda版本切换,但是比较占用存储空间。)
突然又想到,既然已经装了 cuda11.1,能不能换一个与 pytorch1.8.1 相近的,使用 cuda11.1 的版本呢?
于是去到 pytorch官网 ,点 install previous versions of PyTorch ,
看到pytorch1.8.0版本是用的cuda11.1版本:
好,开干,换pytorch版本:
在conda环境中卸载原先的 pytorch:
pip uninstall pytorch
卸载完后,按照官网的命令重新安装pytorch:
conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge
重新安装后,小胡又一次运行了项目,嘿,这次成了,项目正常运行,没有报错!
嘿嘿嘿!折腾了半天多时间,终于修好了。对于环境的问题已经无力吐槽了,每次都想死!
总结
遇到这种 cuda版本的问题,可以考虑从两个方向去尝试:
- 更换与 pytorch 版本相匹配的cuda,这个代价比较大;
- 更换与 cuda 版本相匹配,并且与项目所用 pytorch 相近的 pytorch 版本,这个代价没那么大,但是有可能版本不适用于项目。
总之,每次遇到环境问题都想死,但是还是要解决的不是吗?焯了!
参考资料
[1] https://blog.csdn.net/Zinnir/article/details/122766367
[2] https://zhuanlan.zhihu.com/p/416712347
这篇关于UserWarning:NVIDIA GeForce RTX 3060 Laptop GPU with CUD.......warnings.warn(incompatible_device_warn的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!