عامر ابراهيم نشر 30 أغسطس 2021 أرسل تقرير نشر 30 أغسطس 2021 أعلم أنه يمكننا قياس زمن تنفيذ استدعاء sess.run، ولكن هل من الممكن الحصول على تفاصيل أكثر دقة مثل حساب زمن تنفيذ كل عقدة من البيان؟ 1 اقتباس
1 Ali Haidar Ahmad نشر 30 أغسطس 2021 أرسل تقرير نشر 30 أغسطس 2021 لاتوجد طريقة في تنسرفلو للقيام بذلك مع أنها مهمة، لذلك نلجأ لاستخدام Timeline للحصول على وقت التنفيذ لكل عقدة في البيان، لكنن هنا يجب أن نقوم بضبط كل من الوسيطيتين options و run_metadeta كما في المثال التالي: import tensorflow as tf from tensorflow.python.client import timeline x = tf.random_normal([500, 500]) y = tf.random_normal([500, 500]) res = tf.matmul(x, y) 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) #Timeline الآن نقوم بإنشاء كائن من til = timeline.Timeline(run_metadata.step_stats) t = til.generate_chrome_trace_format() #json ثم تخزينه في ملف with open('time.json', 'w') as file: file.write(t) اقتباس
السؤال
عامر ابراهيم
أعلم أنه يمكننا قياس زمن تنفيذ استدعاء sess.run، ولكن هل من الممكن الحصول على تفاصيل أكثر دقة مثل حساب زمن تنفيذ كل عقدة من البيان؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.