Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
SageMaker Laporan interaktif debugger
Terima laporan pembuatan profil yang dibuat secara otomatis oleh Debugger. Laporan Debugger memberikan wawasan tentang pekerjaan pelatihan Anda dan menyarankan rekomendasi untuk meningkatkan kinerja model Anda. Tangkapan layar berikut menunjukkan kolase laporan profil Debugger. Untuk mempelajari selengkapnya, lihat SageMaker Laporan pembuatan profil debugger.
catatan
Anda dapat mengunduh laporan Debugger saat pekerjaan pelatihan Anda berjalan atau setelah pekerjaan selesai. Selama pelatihan, Debugger secara bersamaan memperbarui laporan yang mencerminkan status evaluasi aturan saat ini. Anda dapat mengunduh laporan Debugger lengkap hanya setelah pekerjaan pelatihan selesai.
penting
Dalam laporan, plot dan dan rekomendasi disediakan untuk tujuan informasi dan tidak definitif. Anda bertanggung jawab untuk membuat penilaian independen Anda sendiri atas informasi tersebut.
![Contoh laporan ringkasan pekerjaan pelatihan Debugger](images/debugger/debugger-profile-report.jpg)
SageMaker Laporan pembuatan profil debugger
Untuk pekerjaan SageMaker pelatihan apa pun, aturan SageMaker Debugger memanggil semua ProfilerReport aturan pemantauan dan pembuatan profil dan menggabungkan analisis aturan ke dalam laporan yang komprehensif. Mengikuti panduan ini, unduh laporan menggunakan Amazon SageMaker Python SDK
penting
Dalam laporan tersebut, plot dan dan rekomendasi disediakan untuk tujuan informasi dan tidak definitif. Anda bertanggung jawab untuk membuat penilaian independen Anda sendiri atas informasi tersebut.
Unduh laporan pembuatan profil SageMaker Debugger
Unduh laporan pembuatan profil SageMaker Debugger saat tugas pelatihan Anda berjalan atau setelah pekerjaan selesai menggunakan Amazon SageMaker Python SDK
catatan
Untuk mendapatkan laporan profiling yang dihasilkan oleh SageMaker Debugger, Anda harus menggunakan ProfilerReportaturan bawaan yang ditawarkan oleh Debugger. SageMaker Untuk mengaktifkan aturan dengan tugas latihan Anda, lihat Mengkonfigurasi Aturan Profiler Bawaan.
Tip
Anda juga dapat mengunduh laporan dengan satu klik di dasbor wawasan SageMaker Studio Debugger. Ini tidak memerlukan skrip tambahan untuk mengunduh laporan. Untuk mengetahui cara mengunduh laporan dari Studio, lihatBuka dasbor Amazon SageMaker Debugger Insights.
catatan
Jika Anda memulai tugas latihan tanpa mengonfigurasi parameter khusus Debugger, Debugger akan menghasilkan laporan hanya berdasarkan aturan pemantauan sistem karena parameter Debugger tidak dikonfigurasi untuk menyimpan metrik kerangka kerja. Untuk mengaktifkan profil metrik kerangka kerja dan menerima laporan profil Debugger yang diperluas, konfigurasikan profiler_config
parameter saat membuat atau memperbarui estimator. SageMaker
Untuk mempelajari cara mengkonfigurasi profiler_config
parameter sebelum memulai pekerjaan pelatihan, lihatKonfigurasikan untuk pembuatan profil kerangka kerja.
Untuk memperbarui tugas pelatihan saat ini dan mengaktifkan profil metrik kerangka kerja, lihat Memperbarui Konfigurasi Profil Kerangka Debugger.
Panduan laporan pembuatan profil debugger
Bagian ini memandu Anda melalui bagian laporan profiling Debugger demi bagian. Laporan pembuatan profil dibuat berdasarkan aturan bawaan untuk pemantauan dan pembuatan profil. Laporan menunjukkan plot hasil hanya untuk aturan yang menemukan masalah.
penting
Dalam laporan tersebut, plot dan dan rekomendasi disediakan untuk tujuan informasi dan tidak definitif. Anda bertanggung jawab untuk membuat penilaian independen Anda sendiri atas informasi tersebut.
Topik
Ringkasan pekerjaan pelatihan
Di awal laporan, Debugger memberikan ringkasan pekerjaan pelatihan Anda. Di bagian ini, Anda dapat meninjau durasi waktu dan stempel waktu pada fase pelatihan yang berbeda.
![Contoh laporan pembuatan profil Debugger](images/debugger/debugger-profiling-report-summary.gif)
Tabel ringkasan berisi informasi berikut:
-
start_time — Waktu yang tepat ketika pekerjaan pelatihan dimulai.
-
end_time — Waktu yang tepat ketika pekerjaan pelatihan selesai.
-
job_duration_in_seconds — Total waktu pelatihan dari start_time hingga end_time.
-
training_loop_start — Waktu yang tepat ketika langkah pertama dari zaman pertama telah dimulai.
-
training_loop_end — Waktu yang tepat ketika langkah terakhir dari zaman terakhir telah selesai.
-
training_loop_duration_in_seconds — Total waktu antara waktu mulai loop pelatihan dan waktu akhir loop pelatihan.
-
initialization_in_seconds - Waktu yang dihabiskan untuk menginisialisasi pekerjaan pelatihan. Fase inisialisasi mencakup periode dari start_time ke waktu training_loop_start. Waktu inisialisasi dihabiskan untuk menyusun skrip pelatihan, memulai skrip pelatihan, membuat dan menginisialisasi model, memulai instans EC2, dan mengunduh data pelatihan.
-
finalization_in_seconds — Waktu yang dihabiskan untuk menyelesaikan pekerjaan pelatihan, seperti menyelesaikan pelatihan model, memperbarui artefak model, dan menutup instans EC2. Fase finalisasi mencakup periode dari waktu training_loop_end hingga end_time.
-
inisialisasi (%) — Persentase waktu yang dihabiskan untuk inisialisasi atas total job_duration_in_seconds.
-
loop pelatihan (%) — Persentase waktu yang dihabiskan untuk loop pelatihan di atas total job_duration_in_seconds.
-
finalisasi (%) — Persentase waktu yang dihabiskan untuk finalisasi atas total job_duration_in_seconds.
Statistik penggunaan sistem
Di bagian ini, Anda dapat melihat ikhtisar statistik pemanfaatan sistem.
![Contoh laporan pembuatan profil Debugger](images/debugger/debugger-profiling-report-system-usage.png)
Laporan pembuatan profil Debugger mencakup informasi berikut:
-
node — Daftar nama node. Jika menggunakan pelatihan terdistribusi pada multi node (beberapa instance EC2), nama node dalam format.
algo-n
-
metrik — Metrik sistem yang dikumpulkan oleh Debugger: CPU, GPU, memori CPU, memori GPU, I/O, dan metrik Jaringan.
-
unit — Unit metrik sistem.
-
max — Nilai maksimum setiap metrik sistem.
-
p99 — Persentil ke-99 dari setiap pemanfaatan sistem.
-
p95 — Persentil ke-95 dari setiap pemanfaatan sistem.
-
p50 — Persentil ke-50 (median) dari setiap pemanfaatan sistem.
-
min — Nilai minimum setiap metrik sistem.
Ringkasan metrik kerangka kerja
Pada bagian ini, diagram lingkaran berikut menunjukkan rincian operasi kerangka kerja pada CPU dan GPU.
![Contoh laporan pembuatan profil Debugger](images/debugger/debugger-profiling-report-framework-metrics-summary.gif)
Setiap diagram lingkaran menganalisis metrik kerangka kerja yang dikumpulkan dalam berbagai aspek sebagai berikut:
-
Rasio antara fase TRAIN/EVAL dan lainnya — Menunjukkan rasio antara durasi waktu yang dihabiskan untuk fase pelatihan yang berbeda.
-
Rasio antara pass maju dan mundur — Menunjukkan rasio antara durasi waktu yang dihabiskan untuk pass maju dan mundur dalam loop pelatihan.
-
Rasio antara operator CPU/GPU - Menunjukkan rasio antara waktu yang dihabiskan pada operator yang berjalan pada CPU atau GPU, seperti operator convolutional.
-
Metrik umum yang direkam dalam kerangka kerja — Menunjukkan rasio antara waktu yang dihabiskan untuk metrik kerangka kerja utama, seperti pemuatan data, pass maju dan mundur.
Ikhtisar: Operator CPU
Bagian ini memberikan informasi tentang operator CPU secara rinci. Tabel menunjukkan persentase waktu dan waktu kumulatif absolut yang dihabiskan untuk operator CPU yang paling sering disebut.
![Contoh laporan pembuatan profil Debugger](images/debugger/debugger-profiling-report-framework-cpu-operators.gif)
Ikhtisar: Operator GPU
Bagian ini memberikan informasi tentang operator GPU secara rinci. Tabel menunjukkan persentase waktu dan waktu kumulatif absolut yang dihabiskan untuk operator GPU yang paling sering disebut.
![Contoh laporan pembuatan profil Debugger](images/debugger/debugger-profiling-report-framework-gpu-operators.gif)
Ringkasan aturan
Pada bagian ini, Debugger menggabungkan semua hasil evaluasi aturan, analisis, deskripsi aturan, dan saran.
![Contoh laporan pembuatan profil Debugger](images/debugger/debugger-profiling-report-rules-summary.png)
Menganalisis loop pelatihan — durasi langkah
Di bagian ini, Anda dapat menemukan statistik rinci durasi langkah pada setiap inti GPU dari setiap node. Debugger mengevaluasi nilai rata-rata, maksimum, p99, p95, p50, dan minimum durasi langkah, dan mengevaluasi pencilan langkah. Histogram berikut menunjukkan durasi langkah yang ditangkap pada node pekerja dan GPU yang berbeda. Anda dapat mengaktifkan atau menonaktifkan histogram setiap pekerja dengan memilih legenda di sisi kanan. Anda dapat memeriksa apakah ada GPU tertentu yang menyebabkan pencilan durasi langkah.
![Contoh laporan pembuatan profil Debugger](images/debugger/debugger-profiling-report-framework-step-duration.gif)
Analisis pemanfaatan GPU
Bagian ini menunjukkan statistik rinci tentang pemanfaatan inti GPU berdasarkan aturan LowGPUUtilization. Ini juga merangkum statistik pemanfaatan GPU, mean, p95, dan p5 untuk menentukan apakah pekerjaan pelatihan kurang memanfaatkan GPU.
Ukuran batch
Bagian ini menunjukkan statistik terperinci dari total pemanfaatan CPU, pemanfaatan GPU individu, dan jejak memori GPU. BatchSize Aturan menentukan apakah Anda perlu mengubah ukuran batch untuk memanfaatkan GPU dengan lebih baik. Anda dapat memeriksa apakah ukuran batch terlalu kecil sehingga kurang dimanfaatkan atau terlalu besar menyebabkan terlalu banyak pemanfaatan dan masalah memori. Dalam plot, kotak menunjukkan rentang persentil p25 dan p75 (masing-masing diisi dengan ungu tua dan kuning cerah) dari median (p50), dan bilah kesalahan menunjukkan persentil ke-5 untuk batas bawah dan persentil ke-95 untuk batas atas.
![Contoh laporan pembuatan profil Debugger](images/debugger/debugger-profiling-report-batch-size.png)
Kemacetan CPU
Di bagian ini, Anda dapat menelusuri kemacetan CPU yang terdeteksi oleh aturan CPUBottleNeck dari pekerjaan pelatihan Anda. Aturan memeriksa apakah pemanfaatan CPU di atas cpu_threshold
(90% secara default) dan juga jika pemanfaatan GPU di bawah gpu_threshold
(10% secara default).
![Contoh laporan pembuatan profil Debugger](images/debugger/debugger-profiling-report-cpu-bottlenecks.png)
Diagram lingkaran menunjukkan informasi berikut:
-
Penggunaan GPU rendah yang disebabkan oleh kemacetan CPU - Menunjukkan rasio titik data antara titik dengan pemanfaatan GPU di atas dan di bawah ambang batas dan yang sesuai dengan kriteria bottleneck CPU.
-
Rasio antara fase TRAIN/EVAL dan lainnya — Menunjukkan rasio antara durasi waktu yang dihabiskan untuk fase pelatihan yang berbeda.
-
Rasio antara pass maju dan mundur — Menunjukkan rasio antara durasi waktu yang dihabiskan untuk pass maju dan mundur dalam loop pelatihan.
-
Rasio antara operator CPU/GPU - Menunjukkan rasio antara durasi waktu yang dihabiskan untuk GPU dan CPU oleh operator Python, seperti proses pemuat data dan operator pass maju dan mundur.
-
Metrik umum yang direkam dalam kerangka kerja — Menunjukkan metrik kerangka kerja utama dan rasio antara durasi waktu yang dihabiskan untuk metrik.
Kemacetan I/O
Di bagian ini, Anda dapat menemukan ringkasan kemacetan I/O. Aturan mengevaluasi waktu tunggu I/O dan tingkat pemanfaatan GPU dan monitor jika waktu yang dihabiskan untuk permintaan I/O melebihi persentase ambang batas dari total waktu pelatihan. Ini mungkin menunjukkan kemacetan I/O di mana GPU menunggu data tiba dari penyimpanan.
Load balancing dalam pelatihan multi-GPU
Di bagian ini, Anda dapat mengidentifikasi masalah penyeimbangan beban kerja di seluruh GPU.
![Contoh laporan pembuatan profil Debugger](images/debugger/debugger-profiling-report-workload-balancing.gif)
Analisis memori GPU
Di bagian ini, Anda dapat menganalisis pemanfaatan memori GPU yang dikumpulkan oleh aturan MemoryIncrease GPU. Dalam plot, kotak menunjukkan rentang persentil p25 dan p75 (masing-masing diisi dengan ungu tua dan kuning cerah) dari median (p50), dan bilah kesalahan menunjukkan persentil ke-5 untuk batas bawah dan persentil ke-95 untuk batas atas.
![Contoh laporan pembuatan profil Debugger](images/debugger/debugger-profiling-report-gpu-memory-utilization.png)