首页 > 解决方案 > 这么快就用完了内存-tensorflow-gpu

问题描述

当我运行https://github.com/cysmith/neural-style-tf项目时,我的 gpu 在设备管理器图形中有一个峰值,如下所示。

张量流:2.3.0 python:3.7.9 CUDA:11.1 gpu:nvidia 840m

确切的时刻 然后它下降到零。

我得到“tensorflow分配器(gpu_0_bfc)内存不足试图分配......”错误。

我不知道为什么 有很多关于它的话题,但我找不到适合我的答案。

标签: tensorflowmemorygpu

解决方案


似乎是内存分配的问题,您可以尝试在导入 TensorFlow 后添加此代码段吗?

gpus = tf.config.experimental.list_physical_devices('GPU')
if gpus:
  try:
    for gpu in gpus:
      tf.config.experimental.set_memory_growth(gpu, True)
  except RuntimeError as e:
    print("Error: " + e)

你也可以尝试TF_FORCE_GPU_ALLOW_GROWTHTRUE你的环境中设置。

这让您可以告诉 TensorFlow 根据使用情况慢慢增加从显卡分配的内存量。


推荐阅读