模型训练时GPU利用率太低的原因及解决

作者:. 时间:2021-02-05 22:22:07 

模型训练时GPU利用率太低的原因

最近在训练SSD模型时发现GPU的利用率只有8%,而CPU的利用率却非常高。

后来了解到,一般使用CPU进行数据的读取和预处理,而使用GPU进行模型的正向传播和反向传播。由于CPU数据读取跟不上(读到内存+多线程+二进制文件),而GPU的处理速度太快,导致GPU的利用率不高。

最后总结一下,有的时候模型训练慢并不是因为显卡不行或者模型太大,而是在跑模型过程中有一些其他的操作导致速度很慢,尤其是文件的IO操作,这会导致GPU得不到连续性使用,整体速度特别慢。

问题的解决办法

1,关闭一些日志记录,减少日志IO操作频率。

2,NVIDA提供了DALI库,可以将数据处理转移到GPU上。

模型训练GPU利用率低,占用低怎么破

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

GPU 显存占用低问题

1、提高batch_size

2、提高模型输入尺寸

3、增加模型深度

推荐:优先提高batch_size, 其他方法会对模型结构产生影响

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)

来源:https://blog.csdn.net/weixin_43213895/article/details/108186447

标签:模型训练,GPU,利用率低
0
投稿

猜你喜欢

  • python使用rabbitmq实现网络爬虫示例

    2022-04-20 20:11:58
  • Python fileinput模块使用实例

    2021-11-28 09:01:18
  • Python设置默认编码为utf8的方法

    2023-09-23 16:08:34
  • Python装饰器代码详解

    2021-04-28 23:16:03
  • PHP json_encode中文乱码解决方法

    2023-07-12 20:20:14
  • 浅谈LogMiner的使用方法

    2009-02-28 11:12:00
  • python发布模块的步骤分享

    2023-08-07 11:29:25
  • Python中的函数式编程:不可变的数据结构

    2023-09-05 07:16:35
  • ASP模拟MVC模型的编程方式

    2008-10-15 14:51:00
  • Favicon图标小常识

    2010-04-01 12:01:00
  • 编写数据库asp程序需注意的问题

    2007-12-29 12:57:00
  • Python爬虫基础讲解之scrapy框架

    2023-11-16 00:07:31
  • python使用matplotlib模块绘制多条折线图、散点图

    2021-07-28 06:41:20
  • asp 正则实现清除html文本格式的函数代码

    2011-03-09 11:21:00
  • ASP读取XML实例 优酷专辑采集程序 雷锋版

    2011-03-08 11:05:00
  • 如何编制一个产生随机密码的函数?

    2009-11-08 19:06:00
  • 交互设计的方法

    2010-08-18 12:32:00
  • css学习笔记: css新闻列表的特殊做法

    2009-07-19 14:25:00
  • CSS Type set: 在线字体调整工具

    2008-03-02 15:36:00
  • Thinkphp结合ajaxFileUpload实现ajax异步图片传输全套代码

    2023-06-14 04:01:53
  • asp之家 网络编程 m.aspxhome.com