Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
In diesem Abschnitt wird der Debugger-Profilerstellungsbericht beschrieben. Der Profilerstellungsbericht wird auf der Grundlage der integrierten Regeln für Überwachung und Profilerstellung generiert. Der Bericht zeigt nur Ergebnisdiagramme für die Regeln, bei denen Probleme festgestellt wurden.
Wichtig
In dem Bericht werden die Diagramme und Empfehlungen zu Informationszwecken bereitgestellt und sind nicht endgültig. Sie übernehmen die Verantwortung dafür, die Informationen unabhängig zu bewerten.
Themen
Zusammenfassung der Ausbildungsberufe
Zu Beginn des Berichts bietet Debugger eine Zusammenfassung Ihres Trainingsauftrags. In diesem Abschnitt können Sie sich einen Überblick über die Dauer und die Zeitstempel der verschiedenen Trainingsphasen verschaffen.

Die Übersichtstabelle enthält die folgenden Informationen:
-
start_time – Die genaue Uhrzeit, zu der der Trainingsauftrag gestartet wurde.
-
end_time – Die genaue Uhrzeit, zu der der Trainingsauftrag beendet wurde.
-
job_duration_in_seconds – Die gesamte Trainingszeit von der start_time bis zur end_time.
-
training_loop_start – Der genaue Zeitpunkt, zu dem der erste Schritt der ersten Epoche begonnen hat.
-
training_loop_end – Der genaue Zeitpunkt, zu dem der letzte Schritt der letzten Epoche abgeschlossen ist.
-
training_loop_duration_in_seconds – Die Gesamtzeit zwischen der Startzeit der Trainingsschleife und der Endzeit der Trainingsschleife.
-
initialization_in_seconds – Zeit, die für die Initialisierung des Trainingsauftrags aufgewendet wurde. Die Initialisierungsphase umfasst den Zeitraum von der start_time bis zur training_loop_start. Die Initialisierungszeit wird für das Kompilieren des Trainingsskripts, das Starten des Trainingsskripts, das Erstellen und Initialisieren des Modells, das Initiieren von Instanzen und das Herunterladen von Trainingsdaten aufgewendet. EC2
-
finalization_in_seconds — Zeit, die für den Abschluss des Trainingsjobs aufgewendet wird, z. B. für das Beenden des Modelltrainings, das Aktualisieren der Modellartefakte und das Schließen der Instanzen. EC2 Die Finalisierungsphase umfasst den Zeitraum von der Zeit training_loop_end bis end_time.
-
initialization (%) – Der Prozentsatz der für die Initialisierung aufgewendeten Zeit über die gesamte Dauer von job_duration_in_seconds.
-
Trainingsschleife (%) – Der Prozentsatz der für training loop aufgewendeten Zeit über die gesamte Dauer von job_duration_in_seconds.
-
Abschluss (%) – Der Prozentsatz der für die Finalisierung aufgewendeten Zeit an der gesamten Dauer von job_duration_in_seconds.
Statistiken der Systemnutzung
In diesem Abschnitt finden Sie einen Überblick über die Statistiken zur Systemauslastung.

Der Debugger-Profiling-Bericht enthält die folgenden Informationen:
-
node – Listet die Namen der Knoten auf. Wenn Sie verteiltes Training auf mehreren Knoten (mehreren EC2 Instanzen) verwenden, haben die Knotennamen das Format von.
algo-n
-
Metrik – Die vom Debugger gesammelten Systemmetriken: CPU, GPU, CPU-Speicher, GPU-Speicher, I/O und Netzwerkmetriken.
-
unit – Die Einheit der Systemmetrik.
-
max – Der Maximalwert jeder Systemmetrik.
-
p99 – Das 99. Perzentil jeder Systemauslastung.
-
p95 – Das 95. Perzentil jeder Systemauslastung.
-
p50 – Das 50. Perzentil (Median) jeder Systemauslastung.
-
min – Der Mindestwert jeder Systemmetrik.
Übersicht der Framework-Metriken
In diesem Abschnitt zeigen die folgenden Kreisdiagramme die Aufschlüsselung der Framework-Operationen für CPUs und GPUs.

In jedem der Kreisdiagramme werden die gesammelten Framework-Metriken unter verschiedenen Aspekten wie folgt analysiert:
-
Verhältnis zwischen TRAIN/EVAL-Phasen und anderen – Zeigt das Verhältnis zwischen der Zeit, die für verschiedene Trainingsphasen aufgewendet wurde.
-
Verhältnis zwischen Vorwärts- und Rückwärtsdurchgang – Zeigt das Verhältnis zwischen der Zeit, die in der Trainingsschleife für das Vorwärts- und Rückwärtsspiel aufgewendet wurde.
-
Verhältnis zwischen CPU/GPU-Operatoren – Zeigt das Verhältnis zwischen der Zeit an, die für Operatoren aufgewendet wurde, die auf einer CPU oder GPU laufen, wie z. B. Faltungsoperatoren.
-
Im Framework aufgezeichnete allgemeine Metriken – Zeigt das Verhältnis zwischen der Zeit an, die für wichtige Framework-Metriken wie das Laden von Daten, Vorwärts- und Rückwärtsdurchlauf aufgewendet wurde.
Überblick: CPU-Operatoren
Dieser Abschnitt enthält detaillierte Informationen zu den CPU-Operatoren. Die Tabelle zeigt den Prozentsatz der Zeit und die absolute Gesamtzeit, die für die am häufigsten aufgerufenen CPU-Operatoren aufgewendet wurde.

Überblick: GPU-Operatoren
Dieser Abschnitt enthält detaillierte Informationen zu den GPU-Operatoren. Die Tabelle zeigt den Prozentsatz der Zeit und die absolute Gesamtzeit, die für die am häufigsten aufgerufenen GPU-Operatoren aufgewendet wurde.

Übersicht der Regeln
In diesem Abschnitt fasst der Debugger alle Ergebnisse, Analysen, Regelbeschreibungen und Vorschläge der Regelauswertung zusammen.

Analyse der Trainingsschleife – Schrittdauer
In diesem Abschnitt finden Sie eine detaillierte Statistik der Schrittdauer auf jedem GPU-Kern jedes Knotens. Der Debugger wertet Mittel-, Maximal-, P99-, P95-, P50- und Mindestwert der Schrittdauer aus und wertet Schrittausreißer aus. Das folgende Histogramm zeigt die Schrittdauer, die auf verschiedenen Worker-Knoten und erfasst wurde. GPUs Sie können das Histogramm jedes Workers aktivieren oder deaktivieren, indem Sie die Legenden auf der rechten Seite auswählen. Sie können überprüfen, ob es eine bestimmte GPU gibt, die Ausreißer bei der Schrittdauer verursacht.

Analyse der GPU-Auslastung
Dieser Abschnitt enthält detaillierte Statistiken zur GPU-Kernauslastung auf der Grundlage der GPUUtilization Niedrigen Regel. Außerdem werden die Statistiken zur GPU-Auslastung (Mittelwert, P95 und P5) zusammengefasst, um festzustellen, ob der Trainingsjob zu wenig ausgelastet ist. GPUs
Batch-Größe
In diesem Abschnitt werden detaillierte Statistiken zur gesamten CPU-Auslastung, zur individuellen GPU-Auslastung und zur GPU-Speicherbelegung angezeigt. Die BatchSize Regel legt fest, ob Sie die Batchgröße ändern müssen, um die besser nutzen zu können. GPUs Sie können überprüfen, ob die Batch-Größe zu klein ist, was zu einer Unterauslastung führt, oder ob sie zu groß ist, was zu Überauslastung und Speichermangel führt. Im Diagramm zeigen die Felder die Perzentilbereiche p25 und p75 (jeweils dunkelviolett bzw. hellgelb gefüllt) vom Median (p50), und die Fehlerbalken zeigen das 5. Perzentil für die untere Grenze und das 95. Perzentil für die obere Grenze.

CPU-Engpässe
In diesem Abschnitt können Sie sich detailliert mit den CPU-Engpässen befassen, die die CPUBottleneck Regel bei Ihrem Trainingsjob erkannt hat. Die Regel prüft, ob die CPU-Auslastung über cpu_threshold
(standardmäßig 90%) und ob die GPU-Auslastung unter gpu_threshold
liegt (standardmäßig 10%).

Die Kreisdiagramme enthalten die folgenden Informationen:
-
Niedrige GPU-Auslastung aufgrund von CPU-Engpässen – Zeigt das Verhältnis der Datenpunkte zwischen den Datenpunkten mit einer GPU-Auslastung über und unter dem Schwellenwert und denen, die den CPU-Engpasskriterien entsprechen.
-
Verhältnis zwischen TRAIN/EVAL-Phasen und anderen – Zeigt das Verhältnis zwischen den Zeitdauern, die für verschiedene Trainingsphasen aufgewendet wurden.
-
Verhältnis zwischen Vorwärts- und Rückwärtsdurchgang – Zeigt das Verhältnis zwischen der Zeit, die in der Trainingsschleife für das Vorwärts- und Rückwärtsspiel aufgewendet wurde.
-
Verhältnis zwischen CPU/GPU-Operatoren — Zeigt das Verhältnis zwischen der Zeitdauer an, die für GPUs und CPUs von Python-Operatoren wie Dataloader-Prozessen und Vorwärts- und Rückwärtspass-Operatoren aufgewendet wurde.
-
Im Framework aufgezeichnete allgemeine Metriken – Zeigt die wichtigsten Framework-Metriken und das Verhältnis zwischen der für die Metriken aufgewendeten Zeitdauer an.
E/A-Engpässe
In diesem Abschnitt finden Sie eine Zusammenfassung der I/O-Engpässe. Die Regel bewertet die I/O-Wartezeit und die GPU-Auslastung und überwacht, ob die für die I/O-Anfragen aufgewendete Zeit einen prozentualen Schwellenwert der gesamten Trainingszeit überschreitet. Dies könnte auf I/O-Engpässe hinweisen, bei denen darauf gewartet wird, dass Daten aus dem GPUs Speicher eintreffen.
Load Balancer bei der Multi-GPU-Training
In diesem Abschnitt können Sie Probleme mit dem Workload-Balancing in allen Bereichen identifizieren. GPUs

GPU-Speicheranalyse
In diesem Abschnitt können Sie die GPU-Speicherauslastung analysieren, die mit der Regel „ GPUMemoryErhöhen“ erfasst wurde. Im Diagramm zeigen die Felder die Perzentilbereiche p25 und p75 (jeweils dunkelviolett bzw. hellgelb gefüllt) vom Median (p50), und die Fehlerbalken zeigen das 5. Perzentil für die untere Grenze und das 95. Perzentil für die obere Grenze.
