赞
踩
最近在做对比实验,要跑好多不同的算法,出现了CUDA out of memory这个问题。从两个方面来看基本就能解决。
看自己的GPU显存是不是已经满了,所以不能再跑报错这个程序了。
终端输入nvidia-smi,如果下图红框你的已经满了或者只剩几十m(我的图没有满),那就是你报错的原因了。
这个时候我们就需要清一下显存,把用不到的进程关闭。ubuntu关闭进程命令:
kill -9 pid
这里的pid需要修改成你要关闭进程的PID号
代码的batchsize太大可能也会导致这个原因,使用较大的batch size
时,GPU需要为每个批次分配更多的内存,这可能导致GPU内存耗尽。如果你的GPU没有足够的内存来容纳指定的batch size
,就会发生CUDA out of memory
错误。
我最开始设置的64,改成16就没有报错了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。