weixin_44206194
weixin_44206194
采纳率0%
2019-03-16 21:19 阅读 7.1k

用tensorflow-gpu跑SSD-Mobilenet模型GPU使用率很低这是为什么

这是GPU运行情况
这是GPU运行情况
这是训练过程
这是训练过程

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

5条回答 默认 最新

  • zong596568821xp ZONG_XP 2020-12-09 19:55

    GPU利用率低可能有多方面的原因,首先要知道在训练过程中,不是所有的操作都是在GPU中进行,有一些前处理、后处理、日志记录等是在CPU上进行的,这就导致GPU并不是一直处于工作状态,可以通过运行 watch -n 1 nvidia-smi 来观察 GPU 的周期变化,可以看到是时高时低的,解决方法可以参考这篇博客https://blog.csdn.net/m0_38064529/article/details/103168172

    点赞 2 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2019-03-16 23:54

    batch size太小,导致模型的并行化程度太低。还有你的cpu、内存/显存带宽性能不足。

    点赞 1 评论 复制链接分享
  • xiaosongshine 小宋是呢 2020-12-28 16:10

    出现类似原因一般都会数据处理读取成为模型训练的瓶颈。通俗的理解就是训练中对数据处理耗时较多,使得gpu无法大规模并行运算。解决可以从以下几个方面着手:

    • 将从硬盘数据读取到内存中,减少读取耗时
    • 开启多线程加速数据处理
    • 减少batch-size,缩短每次训练的数据处理时间
    点赞 1 评论 复制链接分享
  • qq_39471651 ecm16 2020-04-18 15:19

    试试legacy/train.py而非model main.py

    点赞 评论 复制链接分享
  • tensorflowforum TensorFlow 社区 2021-01-12 14:56

    感谢 @ZONG_XP 和@小宋是呢 的认真回答,楼主是否尝试过此方法呢?欢迎回来反馈结果~

    点赞 评论 复制链接分享

相关推荐