2017-08-07 116 views
0

我正在使用Keras tensorflow一个大模型,向训练jupyter笔记本内核停止的结束,在命令行中,我有以下错误:CUDA_ERROR_OUT_OF_MEMORY:如何激活从Keras多个GPU在Tensorflow

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只使用一个,除非指定。因此,我有2个问题:

  1. 有如何利用所有的GPU在Keras良好的工作例如

  2. 在Keras,现在看来,这是可以改变gpu_options.allow_growth =真,但我看不出究竟是如何做到这一点(我理解,这是作为一个帮助吸血鬼,但我完全新的DL在GPU上)

看到CUDA_ERROR_OUT_OF_MEMORY in tensorflow

回答

0
  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)