【报错笔记】pytorch RuntimeError: CUDA out of memory.

本人也是新人小白一枚,主要做小目标检测,写博客也是为了多交流也便于记录,欢迎探讨指导!

【问题描述】

本人在尝试使用Efficientdet做目标检测运行train.py时一直出现报错

RuntimeError: CUDA out of memory. Tried to allocate 64.00 MiB (GPU 0; 4.00 GiB total capacity; 245.95 MiB already allocated; 2.45 GiB free; 266.00 MiB reserved in total ......)

【报错笔记】pytorch RuntimeError: CUDA out of memory._第1张图片【解决方案】

看到out of memory或者OOM第一反应可以尝试调小batchsize(ps:注意有时候存在BN层的时候batchsize最小只能为2,不能为1),但是这种方法在此处没用,主席仔细看报错信息发现显存其实是够用的,这里应该就不是batchsize的问题。

考虑更改num_workers参数(本人的该参数就在train.py中,有的代码设置看在utils的py文件里),这个参数用于设置是否多线程读取数据的,开启后读取的速度会加快,但是如果电脑性能不够也会出现问题,我这里吧num_workers由4改为2就可以正常训练了。

 改为2就可以正常训练了:

【报错笔记】pytorch RuntimeError: CUDA out of memory._第2张图片

 

你可能感兴趣的:(报错笔记,python,深度学习,pytorch)