View a markdown version of this page

Daftar aturan profiler bawaan Debugger - Amazon SageMaker AI

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 atau operasi SageMaker API tingkat rendah. Tidak ada biaya tambahan untuk menggunakan aturan bawaan. Untuk informasi selengkapnya tentang penagihan, lihat halaman SageMaker Harga Amazon.

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.

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: None

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: 70 (dalam persentase)

gpu_threshold_p95

Mendefinisikan ambang batas untuk kuantil 95 pemanfaatan GPU dalam persentase.

Opsional

Nilai yang valid: Integer

Nilai default: 70 (dalam persentase)

gpu_memory_threshold_p95

Mendefinisikan ambang batas untuk kuantil 95 pemanfaatan memori GPU dalam persentase.

Opsional

Nilai yang valid: Integer

Nilai default: 70 (dalam persentase)

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: 100

window

Ukuran jendela untuk menghitung kuantil.

Opsional

Nilai yang valid: Integer

Nilai default: 500

scan_interval_us

Interval waktu dimana file timeline dipindai.

Opsional

Nilai yang valid: Integer

Nilai default: 60000000 (dalam mikrodetik)

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: 50 (dalam persentase)

gpu_threshold

Ambang batas yang mendefinisikan pemanfaatan GPU rendah.

Opsional

Nilai yang valid: Integer

Nilai default: 10 (dalam persentase)

cpu_threshold

Ambang batas yang mendefinisikan pemanfaatan CPU yang tinggi.

Opsional

Nilai yang valid: Integer

Nilai default: 90 (dalam persentase)

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: 100

scan_interval_us

Interval waktu dengan mana file timeline dipindai.

Opsional

Nilai yang valid: Integer

Nilai default: 60000000 (dalam mikrodetik)

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: 10 (dalam persentase)

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: 100

window

Ukuran jendela untuk menghitung kuantil.

Opsional

Nilai yang valid: Integer

Nilai default: 500

scan_interval_us

Interval waktu dimana file timeline dipindai.

Opsional

Nilai yang valid: Integer

Nilai default: 60000000 (dalam mikrodetik)

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: 50 (dalam persentase)

gpu_threshold

Ambang batas yang menentukan kapan GPU dianggap kurang dimanfaatkan.

Opsional

Nilai yang valid: Integer

Nilai default: 70 (dalam persentase)

io_threshold Ambang batas yang mendefinisikan waktu tunggu IO tinggi.

Opsional

Nilai yang valid: Integer

Nilai default: 50 (dalam persentase)

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: 1000

scan_interval_us

Interval waktu dimana file timeline dipindai.

Opsional

Nilai yang valid: Integer

Nilai default: 60000000 (dalam mikrodetik)

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: 0.5 (proporsi tanpa unit)

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: 10

scan_interval_us

Interval waktu dimana file timeline dipindai.

Opsional

Nilai yang valid: Integer

Nilai default: 60000000 (dalam mikrodetik)

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: 70 (dalam persentase)

threshold_p5 Ambang batas untuk kuantil ke-5. Defaultnya adalah 10 persen.

Opsional

Nilai yang valid: Integer

Nilai default: 10 (dalam persentase)

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: 1000

window

Ukuran jendela untuk menghitung kuantil.

Opsional

Nilai yang valid: Integer

Nilai default: 500

scan_interval_us

Interval waktu dimana file timeline dipindai.

Opsional

Nilai yang valid: Integer

Nilai default: 60000000 (dalam mikrodetik)

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: 60000000 (dalam mikrodetik)

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: 20 (dalam menit)

scan_interval_us

Interval waktu dengan mana file timeline dipindai.

Opsional

Nilai yang valid: Integer

Nilai default: 60000000 (dalam mikrodetik)

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: 60000000 (dalam mikrodetik)

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: 5 (dalam menit)

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: 5 (dalam menit)

n_outliers Berapa banyak outlier yang harus diabaikan sebelum aturan mengembalikan True

Opsional

Nilai yang valid: Integer

Nilai default: 10

scan_interval_us

Interval waktu dengan mana file timeline dipindai.

Opsional

Nilai yang valid: Integer

Nilai default: 60000000 (dalam mikrodetik)