YOLOV5训练数据时,GPU显存利用率低

用的是GTX1060的显卡,跑yolov5下的train.py脚本进行训练时,发现GPU_MEM分配的特别低,只有0.2G,但实际我GTX1060的GPU有6G的显存,打开资源管理器发现GPU利用率只有10%左右,但是CPU在60-70%之间。
我打印torch.cuda.is_avaluble()结果是True,说明torch是GPU版本,那为什么感觉像是没用显卡在跑?

img

好兄弟我和你真的是一模一样,你解决了吗

请问博主解决了吗,遇到了同样的问题

我也遇到同样的问题,CPU利用率100%gpu利用率很低,但是验证的时候gpu利用率就提升了,训练的时候gpu一直为0

答主你好 不知道你现在有没有解决问题 我的gpu_mem也是0

首先gpu利用率低想提高GPU利用率的方式有:
硬件上(最好):更换好的四代或者更强大的内存条,配合更好的CPU。
软件上(以pytorch为例):
PyTorch框架的数据加载Dataloader类中包含了一些优化,包括num_workers(线程数)以及pin_memory,可以提升速度。解决数据传输的带宽瓶颈和GPU的运算效率低的问题。
在TensorFlow下有类似的设置。

其次GPU_MEM很小说明gpu占用率低,提高gpu占用率的方式有:在模型不变的情况下尽量将batch size设置大

没调用到GPU
可以参考https://blog.csdn.net/weixin_42708161/article/details/112450881

yolov5如果你参数没有改的话,默认就是cpu训练的,你需要在device的default参数后面加上0,就可以了

img