如果使用TF的MKL构建,则线程模型将变成OpenMP而不是线程。控制线程的数量和它们的亲和力对于获得良好的CPU性能至关重要。在某些情况下,人们可以这样做:
config = tf.ConfigProto(inter_op_parallelism_threads=FLAGS.inter_op,intra_op_parallelism_threads=FLAGS.intra_op)
sess = tf.Session(config=config)但是这个机制似乎不适用于rnn教程应用程序。
ptb /tensorflow/tensorflow/models/tutorials/rnn/ptb/ptb_word_lm.py
我想是用了
sv = tf.train.Supervisor(logdir=FLAGS.save_path)若要定义添加
inter_op_parallelism_threads=FLAGS.inter_op,intra_op_parallelism_threads=FLAGS.intra_op调用失败。那么,一般来说,如何设置这些标志呢?
发布于 2017-07-21 19:05:30
ptb_word_lm.py的解决方案似乎是添加
( config = tf.ConfigProto(inter_op_parallelism_threads=FLAGS.inter_op,intra_op_parallelism_threads=FLAGS.intra_op)
sess = tf.Session(config=config)
在调用ptb_reader之前,从而设置会话env。(连同一些OMP* env变量)
https://stackoverflow.com/questions/45243543
复制相似问题