TensorFlows 時間軸物件的基本示例

Timeline 物件可以讓你獲得的執行時間為圖中的每個節點:

  • 你使用經典的 sess.run(),但也指定了 optionsrun_metadata 的可選引數
  • 然後使用 run_metadata.step_stats 資料建立 Timeline 物件

這是一個測量矩陣乘法效能的示例程式:

import tensorflow as tf
from tensorflow.python.client import timeline

x = tf.random_normal([1000, 1000])
y = tf.random_normal([1000, 1000])
res = tf.matmul(x, y)

# Run the graph with full trace option
with tf.Session() as sess:
    run_options = tf.RunOptions(trace_level=tf.RunOptions.FULL_TRACE)
    run_metadata = tf.RunMetadata()
    sess.run(res, options=run_options, run_metadata=run_metadata)

    # Create the Timeline object, and write it to a json
    tl = timeline.Timeline(run_metadata.step_stats)
    ctf = tl.generate_chrome_trace_format()
    with open('timeline.json', 'w') as f:
        f.write(ctf)

然後,你可以開啟 Goog​​le Chrome,轉到頁面 chrome://tracing 並載入 timeline.json 檔案。你應該看到類似的東西:

StackOverflow 文件