tensorflow
Medir el tiempo de ejecución de las operaciones individuales.
Buscar..
Ejemplo básico con el objeto Timeline de TensorFlow
El objeto Timeline
permite obtener el tiempo de ejecución para cada nodo en el gráfico:
- utiliza un
sess.run()
clásicosess.run()
pero también especifica lasoptions
argumentosoptions
yrun_metadata
- A continuación, crea un objeto de
Timeline
con los datosrun_metadata.step_stats
.
Aquí hay un programa de ejemplo que mide el rendimiento de una multiplicación de matrices:
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)
Luego puede abrir Google Chrome, ir a la página chrome://tracing
y cargar el archivo timeline.json
. Deberías ver algo como:
Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow