ابزار آمار مگا مقیاس

می‌توانید از ابزار Megascale Stats برای تجزیه و تحلیل عملکرد ارتباط بین بخش‌های بارهای کاری که برش‌های TPU متعددی را که در شبکه مرکز داده (DCN) در ارتباط هستند، استفاده کنید.

تمام معیارهای نمایش داده شده در ابزار Megascale Stats بر اساس هر TPU تولید می شوند.

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

TPU: پشتیبانی می شود

GPU: پشتیبانی نمی شود

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

  • send : برای شروع دسترسی مستقیم به حافظه (DMA) میزبان را قطع می کند و یک بافر پر شده برای شروع انتقال داده در اختیار میزبان قرار می دهد.
  • send-done : به میزبان سیگنال می دهد که انتقال داده کامل شده است.
  • recv : یک بافر خالی برای میزبان فراهم می کند تا با داده های منتقل شده پر شود.
  • recv-done : به میزبان سیگنال می دهد که داده ها دریافت شده است.

یک جمع با یک عملیات send آغاز می شود و با عملیات تطبیق recv-done تکمیل می شود. ارسال واقعی داده ها پس از اتمام عملیات ارسال اتفاق می افتد. عملیات send-done پس از ارسال داده ها انجام می شود. به همین ترتیب، پس از اتمام عملیات recv ، داده ها دریافت می شوند. عملیات recv-done پس از دریافت داده ها انجام می شود.

اجزای رابط

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

  • نام جمعی DCN: اختصاص داده شده توسط XLA.
  • Recv op name: نام عملیات recv-done TPU. این یک راه آسان برای جستجوی Trace Viewer برای عملیات TPU جمعی مربوطه را فراهم می کند.
  • Send op name: نام عملیات send TPU.
  • Slack Time: به عنوان زمان مستقل شبکه تعریف می شود که گروه باید داده ها را ارسال کند. این معیار زمانی است که مجموعه برای ارسال و دریافت داده ها در دسترس است، به استثنای عملیات send ، send-done ، recv یا recv-done . افزایش زمان شلی، شانس توقف TPU را برای یک مجموعه کاهش می دهد. به عنوان مثال، با توجه به جدول زمانی زیر:

جدول زمانی که زمان سستی را نشان می دهد

Slack time is calculated in this example as:

Slack time = t<sub>1</sub> + t<sub>2</sub> + t<sub>3</sub>
  • مدت زمان مشاهده شده: مدت زمان مشاهده شده برای هر مجموعه. به عنوان فاصله بین شروع عملیات send تا پایان عملیات recv-done مربوطه، از جمله زمان صرف شده برای ارسال و دریافت داده ها محاسبه می شود. به عنوان مثال، با توجه به جدول زمانی زیر:

جدول زمانی که مدت زمان مشاهده شده را نشان می دهد

Observed duration is calculated as:

Observed duration = t<sub>send</sub> + t<sub>1</sub> + t<sub>send-done</sub> + t<sub>2</sub> + t<sub>recv</sub> + t<sub>3</sub> + t<sub>recv-done</sub>
  • Stall Duration: مدت زمانی که گروه TPU را متوقف می کند. این کل مدت زمانی است که مجموعه در عملیات send ، send-done ، recv و recv-done می شود، بدون احتساب زمان صرف شده برای ارسال داده ها. به عنوان مثال، با توجه به جدول زمانی زیر:

جدول زمانی که مدت زمان غرفه را نشان می دهد

Stall duration is calculated in this example as:

Stall duration = t<sub>send</sub> + t<sub>send-done</sub> + t<sub>recv</sub> + t<sub>recv-done</sub>
  • اتفاقات: تعداد کل دفعاتی که یک مجموعه در طول مدت نمایه شروع و تکمیل می شود. عملیات send و عملیات recv-done مطابق آن باید در طول مدت نمایه انجام شود تا در این متریک لحاظ شود.
  • کل غرفه جمع‌آوری شده: کل مدت زمانی که یک TPU در طول یک پروفیل متوقف می‌شود. کل استال تجمع به صورت زیر محاسبه می شود:
    • جمع کل غرفه = مدت زمان غرفه * رخدادها
  • اندازه انتقال داده: مقدار داده ای که از طریق شبکه برای جمع ارسال می شود، که بر اساس شکل عملیات XLA محاسبه می شود.
  • پهنای باند مورد نیاز: پهنای باند مورد نیاز برای انتقال داده ها در slack ارائه شده. می‌توانید از این معیار برای مشاهده تعداد گروه‌هایی که برای پهنای باند شبکه در طول مدت نمایه رقابت می‌کنند، استفاده کنید. پهنای باند مورد نیاز به صورت زیر محاسبه می شود:
    • پهنای باند مورد نیاز = اندازه انتقال داده / زمان سستی

تجزیه و تحلیل داده های ابزار آمار مقیاس بزرگ

برای تجزیه و تحلیل داده های ارائه شده در ابزار:

  1. جدول را بر اساس Aggregated Total Stall به ترتیب نزولی مرتب کنید.
  2. نام جمعی DCN را با بالاترین Aggregated Total Stall شناسایی کنید. یک مقدار قابل توجه بالا در مقایسه با سایرین ممکن است نشان دهنده یک تنگنا باشد.
  3. Required Bandwidth مجموعه DCN را در تعداد هسته ها ضرب کنید (مثلاً 8 عدد در هر میزبان TPU v4). اگر این مقدار از حداکثر پهنای باند شبکه TPU بیشتر باشد، ممکن است نشان دهنده تراکم شبکه باشد. سعی کنید مکانیسم اشتراک گذاری را تغییر دهید تا پهنای باند مورد نیاز کاهش یابد.
  4. یک HLO dump برای بررسی مشکلات کامپایلر ایجاد کنید. عملیات send و recv-done می تواند امکان برنامه ریزی بیشتر عملیات HLO را با هم تداخل داشته باشد و زمان توقف TPU را کاهش دهد.
  5. مدت زمان عملیات recv-done در Trace Viewer برای مجموعه ای با حداکثر سکون کل جمع آوری شده بررسی کنید. مدت زمان انتقال بالا می تواند نشان دهنده تنگنای پهنای باند باشد زیرا عملیات recv-done معمولاً در شبکه مسدود می شود.
  6. اگر مدت زمان عملیات recv-done در مقایسه با زمان شلی بیش از حد زیاد نباشد، ممکن است یک مشکل سخت افزاری را نشان دهد.