在Session定义时,ConfigProto中可以尝试指定下面三个参数:
device_count, 使用CPU数量上限,CPU有多少可以用多少
inter_op_parallelism_threads和intra_op_parallelism_threads告诉session操作的线程并行程度,如果值越小,线程的复用就越少,越可能使用较多的CPU核数。如果值为0,TF会自动选择一个合适的值。
config = tf.ConfigProto(device_count={"CPU":30},
inter_op_parallelism_threads=0,
intra_op_parallelism_threads=0
)
config.gpu_options.allow_growth = True
然后在sess = tf.Session(config=config)即可
在keras中设置如下:
import tensorflow as tf
from keras.backend.tensorflow_backend import set_session
config = tf.ConfigProto()
config.gpu_options.allow_growth = True
set_session(tf.Session(config=config))
网友评论