Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Daftar aturan profiler bawaan Debugger
catatan
Pemberitahuan akhir dukungan: Pada 30 Juni 2027, dukungan untuk Amazon SageMaker Profiler AWS akan berakhir. Setelah 30 Juni 2027, Anda tidak akan lagi dapat mengakses konsol Profiler atau sumber daya Profiler. Untuk informasi selengkapnya, lihat Perubahan ketersediaan profiler.
Gunakan aturan profiler bawaan Debugger yang disediakan oleh Amazon SageMaker Debugger dan analisis metrik yang dikumpulkan saat melatih model Anda. Aturan bawaan Debugger memantau berbagai kondisi umum yang sangat penting untuk keberhasilan menjalankan pekerjaan pelatihan berkinerja. Anda dapat memanggil aturan profiler bawaan menggunakan Amazon SageMaker Python SDK
catatan
Jumlah maksimum aturan profiler bawaan yang dapat Anda lampirkan ke pekerjaan pelatihan adalah 20. SageMaker Debugger sepenuhnya mengelola aturan bawaan dan menganalisis pekerjaan pelatihan Anda secara serempak.
penting
Untuk menggunakan fitur Debugger baru, Anda perlu memutakhirkan SageMaker Python SDK dan pustaka klien SMDebug. Di kernel IPython Anda, notebook Jupyter, atau JupyterLab lingkungan, jalankan kode berikut untuk menginstal versi terbaru dari pustaka dan memulai ulang kernel.
import sys import IPython !{sys.executable} -m pip install -U sagemaker smdebug IPython.Application.instance().kernel.do_shutdown(True)
Aturan Profiler
Aturan berikut adalah aturan bawaan Debugger yang dapat dipanggil menggunakan metode kelas. ProfilerRule.sagemaker
Aturan bawaan debugger untuk menghasilkan laporan profil
| Lingkup Validitas | Built-in Aturan |
|---|---|
| Laporan Profil untuk pekerjaan SageMaker pelatihan apa pun |
Aturan bawaan debugger untuk membuat profil pemanfaatan sumber daya sistem perangkat keras (metrik sistem)
| Lingkup Validitas | Built-in Aturan |
|---|---|
| Aturan pemantauan sistem generik untuk pekerjaan SageMaker pelatihan apa pun |
Aturan bawaan Debugger untuk membuat profil metrik kerangka kerja
| Lingkup Validitas | Built-in Aturan |
|---|---|
| Aturan pembuatan profil untuk kerangka pembelajaran mendalam (TensorFlow dan PyTorch) |
Awas
Untuk mendukung Amazon SageMaker Profiler, SageMaker AI Debugger menghentikan fitur pembuatan profil kerangka kerja mulai dari TensorFlow 2.11 dan 2.0. PyTorch Anda masih dapat menggunakan fitur ini di versi kerangka kerja dan SDK sebelumnya sebagai berikut.
-
SageMaker SDK Python <= v2.130.0
-
PyTorch > = v1.6.0, < v2.0
-
TensorFlow >= v2.3.1, < v2.11
Lihat juga 16 Maret 2023.
Untuk menggunakan aturan bawaan dengan nilai parameter default - gunakan format konfigurasi berikut:
from sagemaker.core.debugger import Rule, ProfilerRule, rule_configs rules = [ ProfilerRule.sagemaker(rule_configs.BuiltInRuleName_1()), ProfilerRule.sagemaker(rule_configs.BuiltInRuleName_2()), ... ProfilerRule.sagemaker(rule_configs.BuiltInRuleName_n()) ]
Untuk menggunakan aturan bawaan dengan menyesuaikan nilai parameter - gunakan format konfigurasi berikut:
from sagemaker.core.debugger import Rule, ProfilerRule, rule_configs rules = [ ProfilerRule.sagemaker( base_config=rule_configs.BuiltInRuleName(), rule_parameters={ "key": "value" } ) ]
Untuk menemukan kunci yang tersedia untuk rule_parameters parameter, lihat tabel deskripsi parameter.
Contoh kode konfigurasi aturan disediakan untuk setiap aturan bawaan di bawah tabel deskripsi parameter.
-
Untuk instruksi lengkap dan contoh penggunaan aturan bawaan Debugger, lihatKode contoh aturan bawaan Debugger.
-
Untuk instruksi lengkap tentang menggunakan aturan bawaan dengan operasi SageMaker API tingkat rendah, lihatKonfigurasikan Debugger menggunakan API SageMaker.
ProfilerReport
A ProfilerReport turan ini memanggil semua aturan bawaan untuk pemantauan dan pembuatan profil. Ini membuat laporan profil dan memperbarui ketika aturan individu dipicu. Anda dapat mengunduh laporan profil komprehensif saat pekerjaan pelatihan sedang berjalan atau setelah pekerjaan pelatihan selesai. Anda dapat menyesuaikan nilai parameter aturan untuk menyesuaikan sensitivitas aturan pemantauan dan pembuatan profil bawaan. Kode contoh berikut menunjukkan format dasar untuk menyesuaikan parameter aturan bawaan melalui ProfilerReport aturan.
rules=[ ProfilerRule.sagemaker( rule_configs.ProfilerReport(<BuiltInRuleName>_<parameter_name>=value) ) ]
Jika Anda memicu ProfilerReport aturan ini tanpa parameter khusus seperti yang ditunjukkan dalam kode contoh berikut, maka aturan tersebut memicu semua ProfilerReport aturan bawaan untuk pemantauan dan pembuatan profil dengan nilai parameter defaultnya.
rules=[ProfilerRule.sagemaker(rule_configs.ProfilerReport())]
Kode contoh berikut menunjukkan cara menentukan dan menyesuaikan parameter aturan CPUBottleNeck dan cpu_threshold parameter aturan ioBottleNeck. threshold
rules=[ ProfilerRule.sagemaker( rule_configs.ProfilerReport(CPUBottleneck_cpu_threshold=90,IOBottleneck_threshold=90) ) ]
Untuk menjelajahi apa yang ada dalam laporan profiler, lihat Laporan Profil SageMaker ing Debugger. Selain itu, karena aturan ini mengaktifkan semua aturan pembuatan profil, Anda juga dapat memeriksa status analisis aturan menggunakan UI SageMaker Debugger di SageMaker Studio Experim ents.
Deskripsi Parameter untuk A OverallSystemUsage turan
| Nama Parameter | Deskripsi |
|---|---|
base_trial |
Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger. Diperlukan Nilai valid: String |
<BuiltInRuleName>_<parameter_name> |
Parameter yang dapat disesuaikan untuk menyesuaikan ambang batas aturan pemantauan dan pembuatan profil bawaan lainnya. Opsional Nilai default: |
BatchSize
A BatchSize turan ini membantu mendeteksi jika GPU kurang dimanfaatkan karena ukuran batch yang kecil. Untuk mendeteksi masalah ini, aturan ini memantau pemanfaatan CPU rata-rata, pemanfaatan GPU, dan pemanfaatan memori GPU. Jika pemanfaatan pada memori CPU, GPU, dan GPU rata-rata rendah, ini mungkin menunjukkan bahwa pekerjaan pelatihan dapat berjalan pada jenis instance yang lebih kecil atau dapat berjalan dengan ukuran batch yang lebih besar. Analisis ini tidak berfungsi untuk kerangka kerja yang terlalu mengalokasikan memori. Namun, meningkatkan ukuran batch dapat menyebabkan kemacetan pemrosesan atau pemuatan data karena lebih banyak waktu prapemrosesan data diperlukan di setiap iterasi.
Deskripsi Parameter untuk A BatchSize turan
| Nama Parameter | Deskripsi |
|---|---|
base_trial |
Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger. Diperlukan Nilai valid: String |
cpu_threshold_p95 |
Mendefinisikan ambang batas untuk kuantil 95 pemanfaatan CPU dalam persentase. Opsional Nilai yang valid: Integer Nilai default: |
gpu_threshold_p95 |
Mendefinisikan ambang batas untuk kuantil 95 pemanfaatan GPU dalam persentase. Opsional Nilai yang valid: Integer Nilai default: |
gpu_memory_threshold_p95 |
Mendefinisikan ambang batas untuk kuantil 95 pemanfaatan memori GPU dalam persentase. Opsional Nilai yang valid: Integer Nilai default: |
patience |
Mendefinisikan jumlah titik data yang akan dilewati hingga aturan memulai evaluasi. Beberapa langkah pertama pekerjaan pelatihan biasanya menunjukkan volume proses data yang tinggi, jadi jaga agar aturan tetap sabar dan cegah agar tidak dipanggil terlalu cepat dengan sejumlah data profil tertentu yang Anda tentukan dengan parameter ini. Opsional Nilai yang valid: Integer Nilai default: |
window |
Ukuran jendela untuk menghitung kuantil. Opsional Nilai yang valid: Integer Nilai default: |
scan_interval_us |
Interval waktu dimana file timeline dipindai. Opsional Nilai yang valid: Integer Nilai default: |
CPUBottleCek
Aturan CPUBottleneck membantu mendeteksi apakah GPU kurang dimanfaatkan karena hambatan CPU. Aturan mengembalikan True jika jumlah hambatan CPU melebihi ambang batas yang telah ditentukan.
Deskripsi Parameter untuk Aturan CPUBottleneck
| Nama Parameter | Deskripsi |
|---|---|
base_trial |
Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger. Diperlukan Nilai valid: String |
threshold |
Mendefinisikan ambang batas untuk proporsi waktu hambatan dengan total waktu pelatihan. Jika proporsi melebihi persentase yang ditentukan untuk parameter ambang batas, aturan akan mengalihkan status aturan ke Benar. Opsional Nilai yang valid: Integer Nilai default: |
gpu_threshold |
Ambang batas yang mendefinisikan pemanfaatan GPU rendah. Opsional Nilai yang valid: Integer Nilai default: |
cpu_threshold |
Ambang batas yang mendefinisikan pemanfaatan CPU yang tinggi. Opsional Nilai yang valid: Integer Nilai default: |
patience |
Mendefinisikan jumlah titik data yang akan dilewati hingga aturan memulai evaluasi. Beberapa langkah pertama pekerjaan pelatihan biasanya menunjukkan volume proses data yang tinggi, jadi jaga agar aturan tetap sabar dan cegah agar tidak dipanggil terlalu cepat dengan sejumlah data profil tertentu yang Anda tentukan dengan parameter ini. Opsional Nilai yang valid: Integer Nilai default: |
scan_interval_us |
Interval waktu dengan mana file timeline dipindai. Opsional Nilai yang valid: Integer Nilai default: |
GPUMemoryIncrease
A GPUMemoryIncrease turan ini membantu mendeteksi peningkatan besar dalam penggunaan memori pada GPU.
Deskripsi Parameter untuk A GPUMemoryIncrease turan
| Nama Parameter | Deskripsi |
|---|---|
base_trial |
Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis diatur ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger. Diperlukan Nilai valid: String |
increase |
Mendefinisikan ambang batas untuk peningkatan memori absolut. Opsional Nilai yang valid: Integer Nilai default: |
patience |
Mendefinisikan jumlah titik data yang akan dilewati hingga aturan memulai evaluasi. Beberapa langkah pertama pekerjaan pelatihan biasanya menunjukkan volume proses data yang tinggi, jadi jaga agar aturan tetap sabar dan cegah agar tidak dipanggil terlalu cepat dengan sejumlah data profil tertentu yang Anda tentukan dengan parameter ini. Opsional Nilai yang valid: Integer Nilai default: |
window |
Ukuran jendela untuk menghitung kuantil. Opsional Nilai yang valid: Integer Nilai default: |
scan_interval_us |
Interval waktu dimana file timeline dipindai. Opsional Nilai yang valid: Integer Nilai default: |
IObottleneck
Aturan ini membantu mendeteksi jika GPU kurang dimanfaatkan karena hambatan IO data. Aturan mengembalikan True jika jumlah hambatan IO melebihi ambang batas yang telah ditentukan.
Deskripsi Parameter untuk Aturan IOBottleneck
| Nama Parameter | Deskripsi |
|---|---|
base_trial |
Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis diatur ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger. Diperlukan Nilai valid: String |
threshold |
Mendefinisikan ambang batas saat Aturan mengembalikan True. Opsional Nilai yang valid: Integer Nilai default: |
gpu_threshold |
Ambang batas yang menentukan kapan GPU dianggap kurang dimanfaatkan. Opsional Nilai yang valid: Integer Nilai default: |
io_threshold |
Ambang batas yang mendefinisikan waktu tunggu IO tinggi. Opsional Nilai yang valid: Integer Nilai default: |
patience |
Mendefinisikan jumlah titik data yang akan dilewati hingga aturan memulai evaluasi. Beberapa langkah pertama pekerjaan pelatihan biasanya menunjukkan volume proses data yang tinggi, jadi jaga agar aturan tetap sabar dan cegah agar tidak dipanggil terlalu cepat dengan sejumlah data profil tertentu yang Anda tentukan dengan parameter ini. Opsional Nilai yang valid: Integer Nilai default: |
scan_interval_us |
Interval waktu dimana file timeline dipindai. Opsional Nilai yang valid: Integer Nilai default: |
LoadBalancing
A LoadBalancing turan ini membantu mendeteksi masalah dalam penyeimbangan beban kerja di antara beberapa GPU.
Deskripsi Parameter untuk A LoadBalancing turan
| Nama Parameter | Deskripsi |
|---|---|
base_trial |
Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis diatur ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger. Diperlukan Nilai valid: String |
threshold |
Mendefinisikan persentase beban kerja. Opsional Nilai yang valid: Integer Nilai default: |
patience |
Mendefinisikan jumlah titik data yang akan dilewati hingga aturan memulai evaluasi. Beberapa langkah pertama pekerjaan pelatihan biasanya menunjukkan volume proses data yang tinggi, jadi jaga agar aturan tetap sabar dan cegah agar tidak dipanggil terlalu cepat dengan sejumlah data profil tertentu yang Anda tentukan dengan parameter ini. Opsional Nilai yang valid: Integer Nilai default: |
scan_interval_us |
Interval waktu dimana file timeline dipindai. Opsional Nilai yang valid: Integer Nilai default: |
Pemanfaatan GPU rendah
Aturan lowGPUUtilization membantu mendeteksi apakah pemanfaatan GPU rendah atau mengalami fluktuasi. Ini diperiksa untuk setiap GPU pada setiap pekerja. Aturan mengembalikan True jika kuantil ke-95 di bawah ambang_p95 yang menunjukkan kurangnya pemanfaatan. Aturan mengembalikan true jika kuantil ke-95 berada di atas ambang_p95 dan kuantil ke-5 di bawah ambang_p5 yang menunjukkan fluktuasi.
Deskripsi Parameter untuk Aturan LowGPU
| Nama Parameter | Deskripsi |
|---|---|
base_trial |
Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis diatur ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger. Diperlukan Nilai valid: String |
threshold_p95 |
Ambang batas untuk kuantil ke-95 di bawahnya GPU dianggap kurang dimanfaatkan. Opsional Nilai yang valid: Integer Nilai default: |
threshold_p5 |
Ambang batas untuk kuantil ke-5. Defaultnya adalah 10 persen. Opsional Nilai yang valid: Integer Nilai default: |
patience |
Mendefinisikan jumlah titik data yang akan dilewati hingga aturan memulai evaluasi. Beberapa langkah pertama pekerjaan pelatihan biasanya menunjukkan volume proses data yang tinggi, jadi jaga agar aturan tetap sabar dan cegah agar tidak dipanggil terlalu cepat dengan sejumlah data profil tertentu yang Anda tentukan dengan parameter ini. Opsional Nilai yang valid: Integer Nilai default: |
window |
Ukuran jendela untuk menghitung kuantil. Opsional Nilai yang valid: Integer Nilai default: |
scan_interval_us |
Interval waktu dimana file timeline dipindai. Opsional Nilai yang valid: Integer Nilai default: |
OverallSystemUsage
A OverallSystemUsage turan ini mengukur penggunaan sistem secara keseluruhan per node pekerja. Aturan saat ini hanya mengumpulkan nilai per node dan menghitung persentilnya.
Deskripsi Parameter untuk A OverallSystemUsage turan
| Nama Parameter | Deskripsi |
|---|---|
base_trial |
Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger. Diperlukan Nilai valid: String |
scan_interval_us |
Interval waktu untuk memindai file timeline. Opsional Nilai yang valid: Integer Nilai default: |
MaxInitializationTime
A MaxInitializationTime turan ini membantu mendeteksi jika inisialisasi pelatihan memakan terlalu banyak waktu. Aturan menunggu sampai langkah pertama tersedia.
Deskripsi Parameter untuk A MaxInitializationTime turan
| Nama Parameter | Deskripsi |
|---|---|
base_trial |
Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger. Diperlukan Nilai valid: String |
threshold |
Mendefinisikan ambang batas dalam hitungan menit untuk menunggu langkah pertama tersedia. Opsional Nilai yang valid: Integer Nilai default: |
scan_interval_us |
Interval waktu dengan mana file timeline dipindai. Opsional Nilai yang valid: Integer Nilai default: |
OverallFrameworkMetrics
A OverallFrameworkMetrics turan merangkum waktu yang dihabiskan untuk metrik kerangka kerja, seperti pass maju dan mundur, dan pemuatan data.
Deskripsi Parameter untuk A OverallFrameworkMetrics turan
| Nama Parameter | Deskripsi |
|---|---|
base_trial |
Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger. Diperlukan Nilai valid: String |
scan_interval_us |
Interval waktu untuk memindai file timeline. Opsional Nilai yang valid: Integer Nilai default: |
StepOutlier
A StepOutlier turan ini membantu mendeteksi outlier dalam durasi langkah. Aturan ini kembali True jika ada outlier dengan durasi langkah lebih besar dari stddev sigma dari seluruh durasi langkah dalam rentang waktu.
Deskripsi Parameter untuk A StepOutlier turan
| Nama Parameter | Deskripsi |
|---|---|
base_trial |
Nama pekerjaan pelatihan uji coba dasar. Parameter ini secara otomatis disetel ke pekerjaan pelatihan saat ini oleh Amazon SageMaker Debugger. Diperlukan Nilai valid: String |
stddev |
Mendefinisikan faktor yang digunakan untuk mengalikan standar deviasi. Misalnya, aturan dipanggil secara default ketika durasi langkah lebih besar atau lebih kecil dari 5 kali standar deviasi. Opsional Nilai yang valid: Integer Nilai default: |
mode |
Mode di mana langkah-langkah telah disimpan dan di mana Aturan harus dijalankan. Per aturan default akan berjalan pada langkah-langkah dari fase EVAL dan TRAIN Opsional Nilai yang valid: Integer Nilai default: |
n_outliers |
Berapa banyak outlier yang harus diabaikan sebelum aturan mengembalikan True Opsional Nilai yang valid: Integer Nilai default: |
scan_interval_us |
Interval waktu dengan mana file timeline dipindai. Opsional Nilai yang valid: Integer Nilai default: |