【DL-遇错】RuntimeError: CUDA out of memory.

【DL-遇错】RuntimeError: CUDA out of memory.,第1张

问题描述:

遇到如下错误提示信息:

RuntimeError: CUDA out of memory. Tried to allocate 2.00 MiB (GPU 0;2.00 GiB total capacity; 1.10 GiB already allocated; 1.35 MiB free; 1.13 GiB reserved in total by PyTorch)


原因:

出现类似bug的原因是显存不足

解决方案:

方式一:调整batch_size大小(自己尝试调节)

我这里是将batch_size的大小调成28时候才没有报错。

方式二:不计算梯度

如果上述方法还没解决,不改batchsize

在报错的那一行代码的上面,加上下面一行代码(注意缩进),不计算梯度

with torch.no_grad():

方式三:释放内存

在报错的那一行代码的上面,加上下面两行代码,释放无关的内存

if hasattr(torch.cuda, 'empty_cache'):
	torch.cuda.empty_cache()

方式四:使用CPU来跑

如果使用GPU时候显示内存不足,可以使用CPU来跑。

os.environ["CUDA_VISIBLE_DEVICES"] = "-1"     

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/715951.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-25
下一篇 2022-04-25

发表评论

登录后才能评论

评论列表(0条)

保存