tf.initialize_all_variables():并行地初始化所有变量
tf.train.Saver():保存变量
saver = tf.train.Saver()
恢复变量:
saver.restore(sess, "/tmp/model.ckpt")
tf.ConfigProto:配置tf.session的运算方式,比如GPU和CPU
og_device_placement=True
- 设置为True时,会打印出TensorFlow使用了那种操作
inter_op_parallelism_threads=0
- 设置线程一个操作内部并行运算的线程数,比如矩阵乘法,如果设置为0,则表示以最优的线程数处理
intra_op_parallelism_threads=0
- 设置多个操作并行运算的线程数,比如 c = a + b,d = e + f . 可以并行运算
allow_soft_placement=True
- 有时候,不同的设备,它的cpu和gpu是不同的,如果将这个选项设置成True,那么当运行设备不满足要求时,会自动分配GPU或者CPU。
当使用GPU时候,Tensorflow运行自动慢慢达到最大GPU的内存
session_config.gpu_options.allow_growth = True
当使用GPU时,设置GPU内存使用最大比例
session_config.gpu_options.per_process_gpu_memory_fraction = 0.4
是否能够使用GPU进行运算
tf.test.is_built_with_cuda()
with tf.session as sess:
可以避免在结尾写sess.close(),一般都这样用
tf.graph():创建一个新的图,而不使用原来默认的。
g=tf.Graph
with g.as_default():
a = 3
b = 5
x = tf.add(x,y)
sess = tf.Session(graph=g)#session is run on the graph g