训练yolov5时出现RuntimeError: CUDA out of memory

网上查资料通用的解决方法是调小batch_size,但是经过本人的多次实验发现并没有什么软用,调到8了都给我溢出!

我的这种情况是RuntimeError: CUDA out of memory. Tried to allocate 150.00 MiB (GPU 0; 8.00 GiB total capacity; 204.53 MiB already allocated; 5.99 GiB free; 220.00 MiB reserved in total by PyTorch)。

可以看到明明有5.99GiB的空余空间它就是不用,说我内存溢出。

解决方法:

1.找到yolov5文件夹中utils的dataloaders.py

 2.ctrl+F搜索num_workers,直接把num_workers=nw中的nw减小就行,我这里调成了4,原先默认是8。

 然后就没有报错了,显存也能正常分配了,真的奇葩。

猜你喜欢

转载自blog.csdn.net/weixin_43945848/article/details/126266421