【Debug记录】CUDA out of memory.|显存不足|xx GiB reserved in total by PyTorch

“RuntimeError: CUDA out of memory. Tried to allocate 2.00 GiB (GPU 0; 10.76 GiB total capacity; 7.67 GiB already allocated; 1.73 GiB free; 8.20 GiB reserved in total by PyTorch)”

报错原因: “运行时错误:CUDA内存不足。尝试分配2.00 GiB(GPU 0;总容量10.76 GiB;已分配7.67 GiB;1.73 GiB可用;PyTorch总共保留8.20 GiB)“

报错原因: 显存不足。(只是导入一个三维图像,使用unet模型,batchsize为1,numworks为0,在训练每个epoch后释放缓存torch.cuda.empty_cache(),验证数据时不计算梯度with torch.no_grad())

就是单纯的显存不足啊,(256,256,256)的图像怎么能是2080ti跑的了的呢。

解决方案:
plan A:租张更大的卡试试(不可行,3090也可能还会爆)
plan B:提前预处理,进行切patch操作,(64,64,64)差不多ok(可行,技术解决是硬道理)

参考博文:(原创、不是重复文章)xxx GiB reserved in total by PyTorch的问题

总结: 如果常见的解决OOM的方法都试过了,但自己的还是没解决,那就不要怀疑也不要犹豫了,就是单纯的不够大啊!

猜你喜欢

转载自blog.csdn.net/m0_51141265/article/details/129334592