Alat Statistik Skala Besar

Anda dapat menggunakan alat Statistik Megaskala untuk menganalisis performa komunikasi antar-slice workload yang mencakup beberapa slice TPU yang berkomunikasi di seluruh Jaringan Pusat Data (DCN).

Semua metrik yang ditampilkan di alat Statistik Skala Besar dihasilkan berdasarkan per-TPU.

Platform yang Didukung

Alat Statistik Skala Besar hanya didukung di TPU.

Alat ini menampilkan metrik yang terkait dengan komunikasi antar-slice TPU, yang melibatkan operasi berikut:

  • send: Menginterupsi host untuk memulai Akses Memori Langsung (DMA) dan menyediakan buffer yang terisi ke host untuk memulai transfer data.
  • send-done: Memberi sinyal kepada host bahwa transfer data telah selesai.
  • recv: Menyediakan buffer kosong agar host dapat mengisinya dengan data yang ditransfer.
  • recv-done: Memberi sinyal kepada host bahwa data telah diterima.

Kolektif dimulai oleh operasi send dan diselesaikan oleh operasi recv-done yang cocok. Pengiriman data yang sebenarnya terjadi setelah operasi pengiriman selesai. Operasi send-done terjadi setelah data dikirim. Demikian pula, data diterima setelah operasi recv selesai. Operasi recv-done terjadi setelah data diterima.

Komponen Antarmuka

Alat ini menampilkan tabel dengan kolom berikut, dengan satu baris untuk setiap operasi kolektif yang di-profil:

  • Nama kolektif DCN: Ditetapkan oleh XLA.
  • Nama operasi Recv: Nama operasi recv-done TPU. Hal ini memberikan cara mudah untuk menelusuri Trace Viewer guna menemukan operasi TPU kolektif yang sesuai.
  • Kirim nama op: Nama operasi send TPU.
  • Waktu jeda: Didefinisikan sebagai waktu independen jaringan yang harus dimiliki kolektif untuk mentransmisikan data. Metrik ini adalah ukuran waktu yang tersedia bagi kolektif untuk mengirim dan menerima data, tidak termasuk operasi send, send-done, recv, atau recv-done. Meningkatkan waktu jeda akan mengurangi peluang TPU terhenti untuk kolektif. Misalnya, dengan linimasa berikut:

linimasa yang menampilkan waktu kelonggaran

Slack time is calculated in this example as:

Slack time = t<sub>1</sub> + t<sub>2</sub> + t<sub>3</sub>
  • Durasi yang diamati: Durasi yang diamati untuk setiap kolektif. Waktu ini dihitung sebagai interval antara awal operasi send hingga akhir operasi recv-done yang sesuai, termasuk waktu yang dihabiskan untuk mengirim dan menerima data. Misalnya, dengan linimasa berikut:

linimasa yang menampilkan durasi yang diamati

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>
  • Durasi Hambatan: Durasi waktu kolektif menghambat TPU. Ini adalah total durasi waktu yang dihabiskan koleksi dalam operasi send, send-done, recv, dan recv-done, tidak termasuk waktu yang dihabiskan untuk mengirimkan data. Misalnya, dengan linimasa berikut:

linimasa yang menampilkan durasi penghentian

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>
  • Kemunculan: Jumlah total berapa kali koleksi dimulai dan diselesaikan selama durasi profil. Operasi send dan operasi recv-done yang cocok harus terjadi dalam durasi profil agar disertakan dalam metrik ini.
  • Total jeda gabungan: Total waktu kolektif menghentikan TPU selama durasi pembuatan profil. Penghentian total agregasi dihitung sebagai:
    • Total jeda gabungan = durasi jeda * kemunculan
  • Ukuran data yang ditransmisikan: Jumlah data yang ditransmisikan melalui jaringan untuk kolektif, dihitung berdasarkan bentuk operasi XLA.
  • Bandwidth yang diperlukan: Bandwidth yang diperlukan untuk mengirimkan data dalam jeda yang diberikan. Anda dapat menggunakan metrik ini untuk melihat jumlah kolektif yang bersaing untuk mendapatkan bandwidth jaringan selama durasi pembuatan profil. Bandwidth yang diperlukan dihitung sebagai:
    • Bandwidth yang diperlukan = ukuran data yang ditransmisikan / waktu jeda

Menganalisis Data Alat Statistik Skala Besar

Untuk menganalisis data yang ditampilkan di alat:

  1. Urutkan tabel menurut Aggregated Total Stall dari atas ke bawah.
  2. Identifikasi nama kolektif DCN dengan Aggregated Total Stall tertinggi. Nilai yang sangat tinggi dibandingkan dengan nilai lainnya dapat menunjukkan adanya hambatan.
  3. Kalikan Required Bandwidth kolektif DCN dengan jumlah core (misalnya, 8 per host TPU v4). Jika nilai ini lebih besar daripada bandwidth jaringan maksimum TPU, hal ini dapat menunjukkan kemacetan jaringan. Coba ubah mekanisme sharding untuk mengurangi bandwidth yang diperlukan.
  4. Buat dump HLO untuk memeriksa masalah compiler. Memperluas operasi send dan recv-done dapat memungkinkan penjadwalan lebih banyak operasi HLO yang tumpang-tindih dan mengurangi waktu penundaan TPU.
  5. Periksa durasi operasi recv-done di Trace Viewer untuk kolektif dengan total jeda gabungan maksimum. Durasi transfer yang tinggi dapat menunjukkan hambatan bandwidth karena operasi recv-done biasanya diblokir di jaringan.
  6. Jika durasi operasi recv-done tidak terlalu tinggi dibandingkan dengan waktu jeda, hal ini mungkin menunjukkan masalah hardware.