Keras / Tensorflow 的 GPU 使用率低?

2023-12-25

我在配备 nvidia Tesla K20c GPU 的计算机上使用带有张量流后端的 keras。 (CUDA 8)

我正在训练一个相对简单的卷积神经网络,在训练期间我运行终端程序nvidia-smi检查 GPU 使用情况。正如您在以下输出中看到的,GPU 利用率通常约为 7%-13%

我的问题是:CNN训练期间GPU的使用率不应该更高吗?这是 GPU 配置错误或 keras/tensorflow 使用错误的迹象吗?

nvidia-smi 输出 https://i.stack.imgur.com/jcEDO.png


可能有多种原因,但很可能您在读取训练数据时遇到了瓶颈。当您的 GPU 处理了一批数据时,它需要更多数据。根据您的实现,这可能会导致 GPU 等待 CPU 加载更多数据,从而导致 GPU 使用率降低和训练时间更长。

尝试将所有数据加载到内存中(如果适合)或使用队列管理器 https://www.tensorflow.org/api_docs/python/tf/train/QueueRunner这将使输入管道在后台读取数据。这将减少 GPU 等待更多数据的时间。

The 读取数据指南 https://www.tensorflow.org/programmers_guide/reading_dataTensorFlow 网站上包含更多信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Keras / Tensorflow 的 GPU 使用率低? 的相关文章

随机推荐