

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
<a name="tutorial-gpu-monitoring-gpumon"></a>

Wenn Sie Ihre DLAMI mit einem GPU verwenden, stellen Sie möglicherweise fest, dass Sie auf der Suche nach Möglichkeiten zur Nachverfolgung der Nutzung während der Schulung oder Inferenz sind. 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)](#tutorial-gpu-monitoring-gpumon-cloudwatch-agent-guide)
+ [Konfigurieren Sie Metriken mit dem vorinstallierten Skript `gpumon.py`](#tutorial-gpu-monitoring-gpumon-script)

## Metriken mit dem AWS CloudWatch Agenten konfigurieren (empfohlen)
<a name="tutorial-gpu-monitoring-gpumon-cloudwatch-agent-guide"></a>

Integrieren Sie Ihr DLAMI in den [Unified CloudWatch Agent](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html), um GPU-Metriken zu konfigurieren und die Nutzung von GPU-Koprozessen in Amazon EC2 EC2-beschleunigten Instances zu überwachen.

Es gibt vier Möglichkeiten, [GPU-Metriken](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-NVIDIA-GPU.html) mit Ihrem DLAMI zu konfigurieren:
+ [Konfigurieren Sie minimale GPU-Metriken](#tutorial-gpu-monitoring-gpumon-cloudwatch-agent-minimal)
+ [Konfigurieren Sie partielle GPU-Metriken](#tutorial-gpu-monitoring-gpumon-cloudwatch-agent-partial)
+ [Konfigurieren Sie alle verfügbaren GPU-Metriken](#tutorial-gpu-monitoring-gpumon-cloudwatch-agent-all)
+ [Konfigurieren Sie benutzerdefinierte GPU-Metriken](#tutorial-gpu-monitoring-gpumon-cloudwatch-agent-custom)

Informationen zu Updates und Sicherheitspatches finden Sie unter [Sicherheitspatches für den Agenten AWS CloudWatch](#tutorial-gpu-monitoring-gpumon-cloudwatch-agent-security)

### Voraussetzungen
<a name="tutorial-gpu-monitoring-gpumon-cloudwatch-agent-prerequisites"></a>

Zu Beginn müssen Sie IAM-Berechtigungen für Amazon EC2 EC2-Instances konfigurieren, an die Ihre Instance Metriken weiterleiten kann. CloudWatch Ausführliche Schritte finden Sie unter [IAM-Rollen und -Benutzer für die Verwendung mit dem Agenten erstellen](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/create-iam-roles-for-cloudwatch-agent.html). CloudWatch 

### Konfigurieren Sie minimale GPU-Metriken
<a name="tutorial-gpu-monitoring-gpumon-cloudwatch-agent-minimal"></a>

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` Dienst 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 partielle GPU-Metriken
<a name="tutorial-gpu-monitoring-gpumon-cloudwatch-agent-partial"></a>

Konfigurieren Sie partielle GPU-Metriken mithilfe des `dlami-cloudwatch-agent@partial` `systemd` Dienstes. Dieser Dienst 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
<a name="tutorial-gpu-monitoring-gpumon-cloudwatch-agent-all"></a>

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` Dienst 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
<a name="tutorial-gpu-monitoring-gpumon-cloudwatch-agent-custom"></a>

Wenn die vorkonfigurierten Metriken Ihren Anforderungen nicht entsprechen, können Sie eine benutzerdefinierte CloudWatch Agentenkonfigurationsdatei erstellen.

#### Erstellen Sie eine benutzerdefinierte Konfigurationsdatei
<a name="tutorial-gpu-monitoring-gpumon-cloudwatch-agent-custom-create"></a>

Informationen zum Erstellen einer benutzerdefinierten Konfigurationsdatei finden Sie in den detaillierten Schritten unter [Manuelles Erstellen oder Bearbeiten der CloudWatch Agentenkonfigurationsdatei](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-Configuration-File-Details.html).

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
<a name="tutorial-gpu-monitoring-gpumon-cloudwatch-agent-custom-configure"></a>

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
<a name="tutorial-gpu-monitoring-gpumon-cloudwatch-agent-security"></a>

Neu veröffentlichte Versionen DLAMIs sind mit den neuesten verfügbaren AWS CloudWatch Agent-Sicherheitspatches konfiguriert. In den folgenden Abschnitten erfahren Sie, wie Sie Ihr aktuelles DLAMI je nach Betriebssystem Ihrer Wahl mit den neuesten Sicherheitspatches aktualisieren können.

#### Amazon Linux 2
<a name="tutorial-gpu-monitoring-gpumon-cloudwatch-agent-security-al2"></a>

Wird verwendet`yum`, um die neuesten AWS CloudWatch Agenten-Sicherheitspatches für ein Amazon Linux 2-DLAMI zu erhalten.

```
 sudo yum update
```

#### Ubuntu
<a name="tutorial-gpu-monitoring-gpumon-cloudwatch-agent-security-ubuntu"></a>

Um die neuesten AWS CloudWatch Sicherheitspatches für ein DLAMI mit Ubuntu 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](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/install-CloudWatch-Agent-commandline-fleet.html).

## Konfigurieren Sie Metriken mit dem vorinstallierten Skript `gpumon.py`
<a name="tutorial-gpu-monitoring-gpumon-script"></a>

Das Dienstprogramm gpumon.py ist auf Ihrem DLAMI vorinstalliert. Es lässt sich in die Nutzung pro GPU integrieren CloudWatch und unterstützt deren Überwachung: GPU-Speicher, GPU-Temperatur und GPU-Leistung. Das Skript sendet die überwachten Daten regelmäßig an CloudWatch. Sie können die Granularität für die zu sendenden Daten 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 CloudWatch**

1. 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, lautet „cloudwatch:“. PutMetricData Die Richtlinie, die hinzugefügt wird, lautet wie folgt:

------
#### [ JSON ]

****  

   ```
   {
      "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 finden Sie in der Dokumentation. CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/create-iam-roles-for-cloudwatch-agent.html)

1. Führen Sie auf Ihrem DLAMI [AWS configure](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html#cli-quick-configuration) aus und geben Sie die IAM-Benutzeranmeldedaten an. 

   ```
   $ aws configure
   ```

1. Möglicherweise müssen Sie einige Änderungen am gpumon-Dienstprogramm vornehmen, bevor Sie es ausführen können. Sie finden das Gpumon-Hilfsprogramm und die README-Datei an dem im folgenden Codeblock definierten Speicherort. Weitere Informationen zum `gpumon.py` Skript finden Sie [im Amazon S3 S3-Speicherort des Skripts.](https://s3.amazonaws.com/aws-bigdata-blog/artifacts/GPUMonitoring/gpumon.py)

   ```
   Folder: ~/tools/GPUCloudWatchMonitor
   Files: 	~/tools/GPUCloudWatchMonitor/gpumon.py
         	~/tools/GPUCloudWatchMonitor/README
   ```

   Optionen:
   + Ändern Sie die Region in gpumon.py, wenn sich Ihre Instance NICHT in us-east-1 befindet.
   + Ändern Sie andere Parameter wie den CloudWatch `namespace` oder den Berichtszeitraum mit`store_reso`.

1. Derzeit unterstützt das Skript nur Python 3. Aktivieren Sie die Python-3-Umgebung Ihres bevorzugten Frameworks oder aktivieren Sie die allgemeine Python-3-Umgebung von DLAMI. 

   ```
   $ source activate python3
   ```

1. Führen Sie das gpumon-Dienstprogramm im Hintergrund aus.

   ```
   (python3)$ python gpumon.py &
   ```

1. Öffnen Sie Ihren Browser mit [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) und wählen Sie dann die Metrik. Sie wird einen Namespace '' haben. DeepLearningTrain 
**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. 

![\[GPU-Überwachung aktiviert CloudWatch\]](http://docs.aws.amazon.com/de_de/dlami/latest/devguide/images/gpumon.png)


Möglicherweise sind diese weiteren Themen zur GPU-Überwachung und -Optimierung für Sie interessant:
+ [Überwachen](tutorial-gpu-monitoring.md)
  + [Überwachen Sie mit GPUs CloudWatch](#tutorial-gpu-monitoring-gpumon)
+ [Optimierung](tutorial-gpu-opt.md)
  + [Vorverarbeitung](tutorial-gpu-opt-preprocessing.md)
  + [Training](tutorial-gpu-opt-training.md)