tensorflow
Mät exekveringstiden för enskilda operationer
Sök…
Grundläggande exempel med TensorFlow's Timeline-objekt
Timeline
låter dig få exekveringstiden för varje nod i diagrammet:
- du använder en klassisk
sess.run()
men även ange valfria argumentoptions
ochrun_metadata
- skapar du sedan ett
Timeline
medrun_metadata.step_stats
data
Här är ett exempelprogram som mäter prestanda för en matrismultiplikation:
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)
Du kan sedan öppna Google Chrome, gå till sidan chrome://tracing
och ladda timeline.json
filen. Du borde se något som:
Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow