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.
Überwachen Sie mit GPUs CloudWatch
Wenn Sie Ihr Gerät DLAMI zusammen mit einem verwenden, suchen GPU Sie möglicherweise nach Möglichkeiten, seine Verwendung während des Trainings oder der Inferenz nachzuverfolgen. Dies kann nützlich sein, um Ihre Datenpipeline zu optimieren und Ihr Deep Learning-Netzwerk zu verfeinern.
Es gibt zwei Möglichkeiten, GPU Metriken zu konfigurieren mit CloudWatch:
Metriken mit dem AWS CloudWatch Agenten konfigurieren (empfohlen)
Integrieren Sie Ihren in DLAMI den Unified CloudWatch Agent, um GPU Metriken zu konfigurieren und die Nutzung von GPU Coprozessen in Amazon EC2 Accelerated Instances zu überwachen.
Es gibt vier Möglichkeiten, GPUMetriken mit Ihrem DLAMI zu konfigurieren:
Informationen zu Updates und Sicherheitspatches finden Sie unter Sicherheitspatches für den Agenten AWS CloudWatch
Voraussetzungen
Zu Beginn müssen Sie EC2 IAM Amazon-Instance-Berechtigungen konfigurieren, an die Ihre Instance Metriken weiterleiten kann CloudWatch. Ausführliche Schritte finden Sie unter IAMRollen und Benutzer für die Verwendung mit dem CloudWatch Agenten erstellen.
Konfigurieren Sie minimale GPU Metriken
Konfigurieren Sie minimale GPU Metriken mithilfe des dlami-cloudwatch-agent@minimal
systemd
Dienstes. Dieser Dienst konfiguriert die folgenden Metriken:
utilization_gpu
utilization_memory
Sie finden den systemd
Service für minimale vorkonfigurierte GPU Metriken an der folgenden Stelle:
/opt/aws/amazon-cloudwatch-agent/etc/dlami-amazon-cloudwatch-agent-minimal.json
Aktivieren und starten Sie den systemd
Dienst mit den folgenden Befehlen:
sudo systemctl enable dlami-cloudwatch-agent@minimal sudo systemctl start dlami-cloudwatch-agent@minimal
Konfigurieren Sie GPU Teilmetriken
Konfigurieren Sie GPU Teilmetriken mithilfe des dlami-cloudwatch-agent@partial
systemd
Dienstes. Dieser Service konfiguriert die folgenden Metriken:
utilization_gpu
utilization_memory
memory_total
memory_used
memory_free
Sie finden den systemd
Dienst für teilweise vorkonfigurierte GPU Metriken an der folgenden Stelle:
/opt/aws/amazon-cloudwatch-agent/etc/dlami-amazon-cloudwatch-agent-partial.json
Aktivieren und starten Sie den systemd
Dienst mit den folgenden Befehlen:
sudo systemctl enable dlami-cloudwatch-agent@partial sudo systemctl start dlami-cloudwatch-agent@partial
Konfigurieren Sie alle verfügbaren GPU Metriken
Konfigurieren Sie alle verfügbaren GPU Metriken mithilfe des dlami-cloudwatch-agent@all
systemd
Dienstes. Dieser Dienst konfiguriert die folgenden Metriken:
utilization_gpu
utilization_memory
memory_total
memory_used
memory_free
temperature_gpu
power_draw
fan_speed
pcie_link_gen_current
pcie_link_width_current
encoder_stats_session_count
encoder_stats_average_fps
encoder_stats_average_latency
clocks_current_graphics
clocks_current_sm
clocks_current_memory
clocks_current_video
Sie finden den systemd
Service für alle verfügbaren vorkonfigurierten GPU Metriken an der folgenden Stelle:
/opt/aws/amazon-cloudwatch-agent/etc/dlami-amazon-cloudwatch-agent-all.json
Aktivieren und starten Sie den systemd
Dienst mit den folgenden Befehlen:
sudo systemctl enable dlami-cloudwatch-agent@all sudo systemctl start dlami-cloudwatch-agent@all
Konfigurieren Sie benutzerdefinierte GPU Metriken
Wenn die vorkonfigurierten Metriken Ihren Anforderungen nicht entsprechen, können Sie eine benutzerdefinierte CloudWatch Agentenkonfigurationsdatei erstellen.
Erstellen Sie eine benutzerdefinierte Konfigurationsdatei
Informationen zum Erstellen einer benutzerdefinierten Konfigurationsdatei finden Sie in den detaillierten Schritten unter Manuelles Erstellen oder Bearbeiten der CloudWatch Agentenkonfigurationsdatei.
Gehen Sie für dieses Beispiel davon aus, dass sich die Schemadefinition unter befindet/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json
.
Konfigurieren Sie Metriken mit Ihrer benutzerdefinierten Datei
Führen Sie den folgenden Befehl aus, um den CloudWatch Agenten entsprechend Ihrer benutzerdefinierten Datei zu konfigurieren:
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl \ -a fetch-config -m ec2 -s -c \ file:/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json
Sicherheitspatches für den Agenten AWS CloudWatch
Neu veröffentlichte Versionen DLAMIs sind mit den neuesten verfügbaren AWS CloudWatch Agent-Sicherheitspatches konfiguriert. In den folgenden Abschnitten finden Sie Informationen zur Aktualisierung Ihres aktuellen Sicherheitspatches DLAMI mit den neuesten Sicherheits-Patches, abhängig vom Betriebssystem Ihrer Wahl.
Amazon Linux 2
Verwenden Sie diese Optionyum
, um die neuesten AWS CloudWatch Agenten-Sicherheitspatches für Amazon Linux 2 zu erhaltenDLAMI.
sudo yum update
Ubuntu
Um die neuesten AWS CloudWatch Sicherheitspatches für Ubuntu DLAMI zu erhalten, muss der AWS CloudWatch Agent über einen Amazon S3 S3-Download-Link neu installiert werden.
wget https://s3.
region
.amazonaws.com/amazoncloudwatch-agent-region
/ubuntu/arm64/latest/amazon-cloudwatch-agent.deb
Weitere Informationen zur Installation des AWS CloudWatch Agenten mithilfe von Amazon S3 S3-Download-Links finden Sie unter Installation und Ausführung des CloudWatch Agenten auf Ihren Servern.
Konfigurieren Sie Metriken mit dem vorinstallierten Skript gpumon.py
Ein Hilfsprogramm namens gpumon.py ist auf Ihrem vorinstalliert. DLAMI Es integriert sich in CloudWatch und unterstützt die Überwachung von GPU Speicher, GPU Temperatur und GPU Leistung pro GPU Nutzung. Das Skript sendet die überwachten Daten regelmäßig an CloudWatch. Sie können die Granularität für Daten, an die gesendet werden, konfigurieren, CloudWatch indem Sie einige Einstellungen im Skript ändern. Bevor Sie das Skript starten, müssen Sie jedoch einrichten, um die Metriken CloudWatch zu empfangen.
Wie richte ich die GPU Überwachung ein und führe sie aus mit CloudWatch
-
Erstellen Sie einen IAM Benutzer oder ändern Sie einen vorhandenen Benutzer, um eine Richtlinie für die Veröffentlichung der Metrik festzulegen CloudWatch. Wenn Sie einen neuen Benutzer erstellen, notieren Sie sich die Anmeldeinformationen, da Sie diese im nächsten Schritt benötigen.
Die IAM Richtlinie, nach der gesucht werden soll, ist „cloudwatch:PutMetricData“. Die Richtlinie, die hinzugefügt wird, lautet wie folgt:
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "cloudwatch:PutMetricData" ], "Effect": "Allow", "Resource": "*" } ] }
Tipp
Weitere Informationen zum Erstellen eines IAM Benutzers und zum Hinzufügen von Richtlinien für CloudWatch diesen Benutzer finden Sie in der CloudWatch Dokumentation.
-
Führen Sie auf Ihrem DLAMI die Option AWS configure aus und geben Sie die IAM Benutzeranmeldedaten an.
$
aws configure -
Möglicherweise müssen Sie einige Änderungen am gpumon-Dienstprogramm vornehmen, bevor Sie es ausführen können. Sie finden das Gpumon-Hilfsprogramm und das Verzeichnis, das README im folgenden Codeblock definiert ist. Weitere Informationen zum
gpumon.py
Skript finden Sie im Amazon S3 S3-Speicherort des Skripts.Folder: ~/tools/GPUCloudWatchMonitor Files: ~/tools/GPUCloudWatchMonitor/gpumon.py ~/tools/GPUCloudWatchMonitor/README
Optionen:
-
Ändern Sie die Region in gpumon.py, wenn sich Ihre Instance NOT in us-east-1 befindet.
-
Ändern Sie andere Parameter wie den CloudWatch
namespace
oder den Berichtszeitraum mit.store_reso
-
-
Derzeit unterstützt das Skript nur Python 3. Aktivieren Sie die Python-3-Umgebung Ihres bevorzugten Frameworks oder aktivieren Sie die DLAMI allgemeine Python-3-Umgebung.
$
source activate python3 -
Führen Sie das gpumon-Dienstprogramm im Hintergrund aus.
(python3)$
python gpumon.py & -
Öffnen Sie Ihren Browser, um die https://console.aws.amazon.com/cloudwatch/
Metrik auszuwählen. Sie wird einen Namespace 'DeepLearningTrain' haben. Tipp
Sie können den Namespace durch Modifizierung von gpumon.py ändern. Sie können auch das Berichtsintervall durch Anpassung von
store_reso
ändern.
Im Folgenden finden Sie ein CloudWatch Beispieldiagramm, das über einen Lauf von gpumon.py berichtet, der einen Trainingsjob auf der p2.8xlarge-Instance überwacht.
Diese anderen Themen zum Thema GPU Überwachung und Optimierung könnten Sie interessieren:
-
-
Überwachen Sie mit GPUs CloudWatch
-