记录一个明明安装了GPU版本的torch但是却不能使用GPU加速训练的问题:
已经安装了GPU版本的torch,但是使用torch.cuda.is_available()来验证的时候得到的结果还是一个大大的false。
-------------------------------------------------------------------------------------------
以下是我的解决方案:
首先在终端环境下查看所安装的torch版本:
但是我在pycharm中查看解释器中的环境:此时的torch版本又是另一个版本。
在anaconda文件夹下查找问题:
查找对应环境的文件夹:
将以下七个文件夹全部复制到对应的环境的目录下(即上面一个截图中envs-->unet_implementation-->lib-->site-packages),并把环境中对应的torch全家桶文件夹删除。
然后重新打开pycharm查看环境中的库,发现正常了:
并且此时运行print(torch.cuda.is_available())得到的结果也成true了,以上步骤完成就可以实现GPU加速模型训练了。
以下是检测时间:比CPU的时候快很多,CPU的时候要将近20分钟才能训练一个epoch。
总结一下:
①估计是之前卸载旧版本的torch的时候就没有卸载干净所以导致新的版本并没有完全安装成功;
②pycharm下查看虚拟环境的库还是更准确一些;
③这样对比终端的库和pycharm的库一眼发现问题;
另外补充一句,这个问题应该新建虚拟环境一样可以解决,但是虚拟环境多了也占内存,所以还是花时间解决一下,这样移动一下文件也比新建环境更快接方便。希望能帮到同样问题的人。