【问题标题】:CUDA_ERROR_OUT_OF_MEMORY: How to activate multiple GPUs from Keras in TensorflowCUDA_ERROR_OUT_OF_MEMORY:如何在 Tensorflow 中从 Keras 激活多个 GPU
【发布时间】:2017-08-07 12:19:18
【问题描述】:

我正在使用 Keras 在 tensorflow 上运行一个大型模型,在训练结束时,jupyter notebook 内核停止,在命令行中出现以下错误:

 2017-08-07 12:18:57.819952: E tensorflow/stream_executor/cuda/cuda_driver.cc:955] failed to alloc 34359738368 bytes on host: CUDA_ERROR_OUT_OF_MEMORY

我想这很简单 - 我的内存不足了。我有 4 个 NVIDIA 1080ti GPU。我知道除非指定,否则 TF 只使用一个。因此,我有两个问题:

  1. 是否有一个很好的工作示例说明如何在 Keras 中利用所有 GPU

  2. 在 Keras 中,似乎可以更改 gpu_options.allow_growth=True,但我无法确切了解如何执行此操作(我知道这是一个帮助吸血鬼,但我对 DL 完全陌生GPU)

CUDA_ERROR_OUT_OF_MEMORY in tensorflow

【问题讨论】:

    标签: memory deep-learning keras


    【解决方案1】:
    1. 看到这个Official Keras Blog

    2. 试试这个:

      import keras.backend as K
      
      config = K.tf.ConfigProto()
      config.gpu_options.allow_growth = True
      session = K.tf.Session(config=config)
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-08
      • 2020-11-13
      • 2017-08-21
      相关资源
      最近更新 更多