ابزار آمار عملیاتی چارچوب

شما می‌توانید از Framework Op Stats برای مشاهده آمار عملکرد عملیات سطح چارچوب (مثلاً JAX یا TensorFlow) که در طول جلسه پروفایلینگ روی میزبان و شتاب‌دهنده اجرا می‌شوند، استفاده کنید. این ابزار با برجسته کردن زمان‌برترین عملیات در طول دوره پروفایلینگ، برای شناسایی اهداف بالقوه برای بهینه‌سازی عملکرد ارزشمند است.

پلتفرم‌های پشتیبانی‌شده

هم TPU و هم GPU پشتیبانی می‌شوند.

اجزای آمار عملیاتی چارچوب

Framework Op Stats دارای اجزای کلیدی زیر است:

  • جدول آمار عملیات چارچوب: این مؤلفه اصلی است که جزئیات دقیقی از هر عملیات چارچوب اجرا شده در طول جلسه پروفایلینگ را در قالب جدولی ارائه می‌دهد. برای هر عملیات چارچوب مجزا، یک ردیف و ستون‌هایی وجود دارد که جزئیات مختلف مربوط به آن عملیات را ثبت می‌کنند.

    • کادرهای جستجو به شما امکان می‌دهند بر اساس میزبان/دستگاه، نوع عملیات یا نام عملیات فیلتر کنید؛ فیلترها رشته‌ی ارائه شده‌ای را که در هر کجای ستون مربوطه ظاهر می‌شود، انتخاب می‌کنند.

    جدول آمار عملیاتی چارچوب

  • بخش نمودارهای خلاصه‌شده: این بخش دارای نمودارهایی است که جدول تفصیلی هر عملیات را به روش‌های زیر خلاصه می‌کند:

    • یک جفت نمودار دایره‌ای (یکی برای شتاب‌دهنده و یکی برای میزبان) که کسری از زمان مصرف‌شده توسط دسته‌های مختلف عملیات چارچوب را نشان می‌دهد.
    • یک نمودار دایره‌ای که کسری از زمان مصرف شده توسط عملیات‌های مختلف فریم‌ورک را نشان می‌دهد (به N عملیات برتر خلاصه شده و بقیه به عنوان «سایر» طبقه‌بندی شده‌اند تا خوانایی بهبود یابد)

    نمودارهای دایره‌ای آمار عملیاتی چارچوب

  • بخش جداول خلاصه‌شده: این بخش دارای یک جفت جدول (یکی برای شتاب‌دهنده و یکی برای میزبان) است که تعداد رخدادها و کل زمان مصرف‌شده (هم به صورت مطلق و هم به عنوان کسری از کل زمان جلسه) توسط دسته‌های مختلف عملیات چارچوب را نشان می‌دهد.

  • یک انتخابگر کشویی به شما امکان می‌دهد تصمیم بگیرید که آیا زمان بیکاری را در نمودارهای دایره‌ای و جداول خلاصه لحاظ کنید یا خیر.

    جداول خلاصه شده آمار عملیاتی چارچوب

جزئیات جدول آمار عملیات چارچوب

شما می‌توانید روی هر یک از عناوین ستون‌ها کلیک کنید تا جدول آمار عملیات چارچوب مرتب شود. ترتیب پیش‌فرض بر اساس کل زمان خودِ عملیات (که در جدول با عنوان «رتبه» نیز مشخص شده است) است.

این جدول شامل اطلاعات زیر برای هر عملیات است:

  • محل اجرای عملیات: اینکه آیا عملیات روی میزبان اجرا می‌شود یا دستگاه.
  • نوع عملیاتی چارچوب: این نوع عملیات مستقیماً از رشته نام عملیات (آخرین بخش پشته فراخوانی) مشتق می‌شوند تا به مرتب‌سازی آسان کمک کنند.
  • نام عملیاتی چارچوب: این نام از فراداده‌های سطح چارچوب که توسط XLA به XProf ارسال شده است، گرفته شده است.
  • تعداد دفعات وقوع: تعداد کل دفعاتی که این عملیات خاص چارچوب در طول دوره پروفایلینگ اجرا شده است.
  • زمان کل (μs): زمان تجمعی صرف شده برای اجرای این عملیات در تمام تکرارهای آن. اگر این عملیات دارای عملیات فرزند باشد، این زمان شامل زمان صرف شده در آن فرزندان نیز می‌شود.
  • میانگین زمان (μs): میانگین زمان برای هر اجرای این عملیات، شامل هر زمانی که در عملیات‌های فرزند صرف شده است، در صورت وجود.
  • کل زمان خود (μs): زمان تجمعی صرف شده صرفاً در بدنه این عملیات HLO، به استثنای هر زمانی که در عملیات‌های فرزندان آن صرف شده است.
  • میانگین زمان خوداجرا (μs): میانگین زمان هر اجرای این عملیات، به استثنای هر زمان صرف شده در عملیات‌های فرزند آن.
  • کل زمان روشن بودن خودکار دستگاه (%): زمان خاموش بودن خودکار دستگاه به صورت درصدی از کل زمان روشن بودن دستگاه در تمام عملیات‌ها.
  • کل زمان خود-فعالیت تجمعی روی دستگاه (%): مجموع کل زمان خود-فعالیت (%) برای تمام عملیاتی که در ترتیب مرتب‌شده‌ی فعلی زودتر ظاهر می‌شوند.
  • کل زمان خود-فعالیت روی میزبان (%): زمان خود-فعالیت هر عملیات به عنوان درصدی از کل زمان حضور در میزبان در بین تمام عملیات‌ها.
  • کل زمان خود-فعالیت تجمعی روی میزبان (%): مجموع زمان خود-فعالیت کل (%) برای تمام عملیاتی که زودتر از بقیه و به ترتیب مرتب شده فعلی ظاهر می‌شوند.

شما می‌توانید از دکمه‌ی «صادرات به عنوان CSV» در سمت راست پنل بالایی برای خروجی گرفتن از داده‌های این جدول به عنوان یک فایل CSV استفاده کنید و برای نمایش کاربرپسندتر، از کادر انتخاب «چاپ زیبا» استفاده کنید.

گزینه صادرات آمار عملیاتی چارچوب به CSV