Keras设定GPU使用内存大小方式(Tensorflow backend)

2020-11-02 14:40:42 浏览数 (1)

通过设置Keras的Tensorflow后端的全局变量达到。

代码语言:javascript复制
import os
import tensorflow as tf
import keras.backend.tensorflow_backend as KTF
 
def get_session(gpu_fraction=0.3):
 '''Assume that you have 6GB of GPU memory and want to allocate ~2GB'''
 
 num_threads = os.environ.get('OMP_NUM_THREADS')
 gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=gpu_fraction)
 
 if num_threads:
  return tf.Session(config=tf.ConfigProto(
   gpu_options=gpu_options, intra_op_parallelism_threads=num_threads))
 else:
  return tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))

使用过程中显示的设置session:

import keras.backend.tensorflow_backend as KTF KTF.set_session(get_session())

补充知识:限制tensorflow的运行内存 (keras.backend.tensorflow)

我就废话不多说了,大家还是直接看代码吧!

代码语言:javascript复制
import tensorflow as tf
from keras.backend.tensorflow_backend import set_session

config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.5 #half of the memory
set_session(tf.Session(config=config))

以上这篇Keras设定GPU使用内存大小方式(Tensorflow backend)就是小编分享给大家的全部内容了,希望能给大家一个参考。

0 人点赞