torch训练gpu利用率不高

GPU的显存占用和算力利用直接影响模型的训练速度

显存一直占用,但是显卡使用率大多数情况为0

GPU利用率低问题

1.提高线程数

2.打开pin_memory

# 在pytorch 加载数据时提高线程数,打开pin_memory
torch.utils.data.DataLoader(image_datasets[x],
                            batch_size=batch_size, 
                            shuffle=True,
                            num_workers=8,
                            pin_memory=True)

3.数据预处理占用比较久

mmdetection中yolov3的数据预处理

    # dict(
    #     type='Expand',
    #     mean=img_norm_cfg['mean'],
    #     to_rgb=img_norm_cfg['to_rgb'],
    #     ratio_range=(1, 2)),
    # dict(
    #     type='MinIoURandomCrop',
    #     min_ious=(0.4, 0.5, 0.6, 0.7, 0.8, 0.9),
    #     min_crop_size=0.3),

这部分注释掉会比较快


暂时不知道如何处理

参考链接:

模型训练 GPU利用率低,占用低怎么破_vmare gpu使用低_Dennis-Ning的博客-CSDN博客
Images normalization using too much cpu during inference · Issue #4488 · open-mmlab/mmdetection · GitHub

yolov5训练加速--一个可能忽视的细节(mmdetection也一样),为什么显卡使用率老是为0?_kv1830的博客-CSDN博客
深度学习训练时GPU利用率忽高忽低如何解决? - 知乎 (zhihu.com)
【深度学习】踩坑日记:模型训练速度过慢,GPU利用率低_模型跑的慢的原因-CSDN博客
深度强化学习遇到问题:模型训练速度过慢、GPU利用率较低,CPU利用率很低问题总结与分析。 - 知乎 (zhihu.com)

https://www.cvmart.net/community/detail/4483

你可能感兴趣的:(人工智能,机器学习,深度学习)