RuntimeError: CUDA out of memory. Tried to allocate 600.00 MiB (GPU 0; 23.69 GiB total capacity)(代码片

Posted 桥本环奈粤港澳分奈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RuntimeError: CUDA out of memory. Tried to allocate 600.00 MiB (GPU 0; 23.69 GiB total capacity)(代码片相关的知识,希望对你有一定的参考价值。

RuntimeError: CUDA out of memory. Tried to allocate 600.00 MiB (GPU 0; 23.69 GiB total capacity; 21.82 GiB already allocated; 115.25 MiB free; 21.87 GiB reserved in total by PyTorch)

运行时错误:CUDA 内存不足。 尝试分配 600.00 MiB(GPU 0;23.69 GiB 总容量;21.82 GiB 已分配;115.25 MiB 空闲;PyTorch 总共保留 21.87 GiB)

原因

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

解决方法1:释放显存

首先 fuser -v /dev/nvidia*sudo fuser -v /dev/nvidia*, 查看最近在GPU上运行的进程, 然后sudo kill相关进程号。

其中:

  • fuser:可以显示出当前哪个程序在使用磁盘上的某个文件、挂载点、甚至网络端口,并给出程序进程的详细信息
  • -v:详细模式
  • /dev/nvidia*:所有和英伟达相关的接口(如GPU)

解决方法2:调小batch size

如果释放了部分显存之后还是不够用的话,可以调小batch size


参考:
nvidia gpu kill进程后,显存仍未清

以上是关于RuntimeError: CUDA out of memory. Tried to allocate 600.00 MiB (GPU 0; 23.69 GiB total capacity)(代码片的主要内容,如果未能解决你的问题,请参考以下文章

使用VGG网络训练发生错误RuntimeError: CUDA out of memory解决方案:

AI绘画——使用stable-diffusion生成图片时提示RuntimeError: CUDA out of memory处理方法

RuntimeError: CUDA out of memory. Tried to allocate 600.00 MiB (GPU 0; 23.69 GiB total capacity)

Pytorch RuntimeError: CUDA error: out of memory at loss.backward() , 使用 CPU 时没有错误

RuntimeError: CUDA out of memory. Tried to allocate 600.00 MiB (GPU 0; 23.69 GiB total capacity)

RuntimeError: CUDA out of memory. Tried to allocate 600.00 MiB (GPU 0; 23.69 GiB total capacity)