tfCongigProto以及设置运行设备

tf.ConfigProto:
 
在创建session时,可以通过tf.ConfigProto()对当前的session进行配置。源码如下:
https://github.com/tensorflow/tensorflow/blob/r1.11/tensorflow/core/protobuf/config.proto
 
以下是几个常用的参数:
log_device_placement::是否打印设备运算日志
allow_soft_placement:如果你设定的设备不存在,是否允许自动分配设备允许
gpu_options.allow_growth 按需要分配显存
gpu_options.per_process_gpu_memory_fractioin 当前进程占用所有GPU资源的比例
 
前两个参数代码如下:

a = tf.constant([1.0, 2.0, 3.0], shape=[3], name='a')
b = tf.constant([1.0, 2.0, 3.0], shape=[3], name='b')
c = a+b
 
config = tf.ConfigProto(log_device_placement=True, allow_soft_placement=True)
with tf.Session(config=config) as sess:
print(sess.run(c))


后两个参数设置如下:

config = tf.ConfigProto()
config.gpu_options.allow_growth = True
#config.gpu_options.per_process_gpu_memory_fractioin = 0.5


 
设置运行设备:
with tf.device('/gpu:0'):
xxx
xxx在gpu0下运行。
 
参考:
TensorFlow实战Google深度学习框架 第二版
https://github.com/tensorflow/tensorflow/blob/r1.11/tensorflow/core/protobuf/config.proto

猜你喜欢

转载自blog.csdn.net/zzb5233/article/details/82885140
今日推荐