Profilieren und optimieren Sie die Rechenleistung - Amazon SageMaker KI

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.

Profilieren und optimieren Sie die Rechenleistung

Beim Trainieren hochmoderner Deep-Learning-Modelle, die schnell an Größe zunehmen, wird es zu einer Herausforderung, den Trainingsauftrag solcher Modelle auf einen großen GPU-Cluster zu skalieren und Probleme mit der Rechenleistung bei Milliarden und Billionen von Vorgängen und Kommunikationsvorgängen in jeder Iteration des Gradientenabstiegs zu identifizieren.

SageMaker AI bietet Profilierungstools zur Visualisierung und Diagnose solch komplexer Rechenprobleme, die sich aus der Ausführung von Trainingsjobs auf AWS Cloud-Computing-Ressourcen ergeben. SageMaker AI bietet zwei Profilerstellungsoptionen: Amazon SageMaker Profiler und einen Monitor für die Ressourcennutzung in Amazon SageMaker Studio Classic. Sehen Sie sich die folgenden Einführungen der beiden Funktionen an, um einen schnellen Einblick zu erhalten und zu erfahren, welche Sie je nach Ihren Bedürfnissen verwenden sollten.

Amazon SageMaker Profiler

Amazon SageMaker Profiler ist eine Profilerstellungsfunktion von SageMaker AI, mit der Sie tief in die Rechenressourcen eintauchen können, die beim Trainieren von Deep-Learning-Modellen bereitgestellt werden, und Einblick in Details auf Betriebsebene erhalten. SageMaker Profiler bietet Python-Module zum Hinzufügen von Anmerkungen in PyTorch- oder TensorFlow-Trainingsskripten und zum Aktivieren von SageMaker Profiler. Sie können über das SageMaker Python SDK und AWS Deep Learning Containers auf die Module zugreifen.

Mit SageMaker Profiler können Sie alle Aktivitäten auf CPUs und GPUs verfolgen, z. B. CPU- und GPU-Auslastung, Kernelausführungen auf GPUs, Kernelstarts auf CPUs, Synchronisierungsvorgänge, Speicheroperationen zwischen CPUs und GPUs, Latenzen zwischen Kernelstarts und entsprechenden Läufen sowie Datenübertragung zwischen CPUs und GPUs.

SageMaker Profiler bietet auch eine Benutzeroberfläche (UI), die das Profil, eine statistische Zusammenfassung der profilierten Ereignisse und den Zeitplan eines Trainingsauftrags visualisiert, um die zeitliche Beziehung der Ereignisse zwischen GPUs und CPUs zu verfolgen und zu verstehen.

Weitere Informationen über SageMaker Profiler finden Sie unter Amazon SageMaker Profiler.

Überwachen von AWS-Rechenressourcen in Amazon SageMaker Studio Classic

SageMaker AI bietet auch eine Benutzeroberfläche in Studio Classic zur Überwachung der Ressourcennutzung auf hoher Ebene, jedoch mit größerer Granularität im Vergleich zu den von SageMaker AI in CloudWatch gesammelten Standardauslastungsmetriken.

Für jeden Trainingsjob, den Sie in SageMaker AI mit dem SageMaker Python SDK ausführen, beginnt SageMaker AI damit, grundlegende Kennzahlen zur Ressourcennutzung wie CPU-Auslastung, GPU-Auslastung, GPU-Speicherauslastung, Netzwerk und I/O-Wartezeit zu profilieren. Es erfasst diese Kennzahlen zur Ressourcennutzung alle 500 Millisekunden.

Im Vergleich zu Amazon-CloudWatch-Metriken, die Metriken in Intervallen von 1 Sekunde erfassen, bietet die Überwachungsfunktion von SageMaker AI eine feinere Granularität der Kennzahlen zur Ressourcennutzung bis zu Intervallen von 100 Millisekunden (0,1 Sekunden), sodass Sie die Metriken auf der Ebene eines Vorgangs oder Schritts eingehend untersuchen können.

Den Zugriff auf das Dashboard zur Überwachung der Kennzahlen zur Ressourcennutzung eines Trainingsjobs finden Sie in der Benutzeroberfläche von SageMaker AI Debugger in SageMaker Studio Experiments.