显存充足,可是却出现CUDA error:out of memory错误

 以前一开始觉得是cuda和cudnn安装错误致使的,因此重装了,可是后来发现重装也出错了。html

后来重装后的用了一会也出现了问题。肯定实际上是Tensorflow和pytorch冲突致使的,由于我发现当我同窗在0号GPU上运行程序我就会出问题。python

详见pytorch官方论坛:linux

https://discuss.pytorch.org/t/gpu-is-not-utilized-while-occur-runtimeerror-cuda-runtime-error-out-of-memory-at/34780ide

所以最好的方法就是运行的时候使用CUDA_VISIBLE_DEVICES限制一下使用的GPU。ui

好比有0,1,2,3号GPU,CUDA_VISIBLE_DEVICES=2,3,则当前进程的可见GPU只有物理上的二、3号GPU,此时它们的编号也对应变成了0、1,即cuda:0对应2号GPU,cuda:1对应3号GPU。spa

如何设置CUDA_VISIBLE_DEVICES:.net

① 使用python的os模块3d

import oshtm

os.environ['CUDA_VISIBLE_DEVICES']='2, 3'blog

②直接设置环境变量(linux系统)

export CUDA_VISIBLE_DEVICES=2,3

 

分割线~~~~~


 猜想有多是cuda和cudnn安装错误致使的,决定重装。

卸载CUDA

https://blog.csdn.net/huang_owen/article/details/80811738

https://blog.csdn.net/u014561933/article/details/79968580

因为以前使用的是deb安装,

sudo apt-get autoremove --purge cuda

卸载后,进入/usr/local,发现还残留有cuda的文件夹,听说是cudnn,可是我好像没发现??

进入cuda-9.0

删除文件夹

 

从新安装cuda

此次使用.run进行安装

https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html

安装完成

以前已经在/etc/profile添加过环境变量了

而后也安装补丁

 

安装cudnn

https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html#installlinux

使用deb方式安装

并验证cudnn的安装是否成功

最后删掉该例程

最后解决了上述虚假报错的问题

相关文章
相关标签/搜索