首页 > 解决方案 > tensorflow 配置文件解释

问题描述

在此处输入图像描述

我使用 tensorflow 配置文件来测试我的模型的推断,这里是配置文件的详细信息。我发现有0,1,2,3, 四个数字,其中12用空白填充。1那么 0-4 是什么意思,为什么和中有空格2。机器有80核,是不是说推理课只占4核?谢谢。

标签: tensorflowkeras

解决方案


我想每一行对应于每个工作线程来运行操作符。因此,正如您所说,您的推理处理仅占用 4 个核心。Tensorflow 使用多线程时

  1. 有一些独立的图形部分。
  2. 有一个使用多线程的运算符。

因此,如果您的图表有许多独立的图表部分,您可以有效地使用多核。

在下面的代码中,图有很多独立的图部分。因此探查器中的行数与“inter_op_parallelism_threads”匹配。

config = tf.ConfigProto(inter_op_parallelism_threads=5, intra_op_parallelism_threads=1)

with tf.device("/cpu:0"):
    list_r = []

    for i in range(80):
        r = tf.random_normal(shape=[100, 100])
        list_r.append(r)

    v = tf.add_n(list_r)


global_step = tf.train.create_global_step()
hook = tf.train.ProfilerHook(save_steps=1)
increment_global = global_step.assign_add(1)


with tf.train.SingularMonitoredSession(hooks=[hook], config=config) as sess:
    sess.run([v, increment_global])

如果您想了解 ConfigProto 的详细信息,可以从https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/protobuf/config.proto获取信息


推荐阅读