GPU-Leistung überwachen


Zur besseren Ressourcenauslastung können Sie die GPU-Nutzungsraten Ihrer VM-Instanzen verfolgen. Wenn Sie die GPU-Nutzungsraten kennen, können Sie Aufgaben wie das Einrichten verwalteter Instanzgruppen ausführen, um Ressourcen bedarfsorientiert automatisch zu skalieren.

Führen Sie die folgenden Schritte aus, um die GPU-Messwerte mit Cloud Monitoring zu prüfen:

  1. Richten Sie auf jeder VM-Instanz das Berichtsskript für GPU-Messwerte ein. Dieses Skript installiert den Berichts-Agent für GPU-Messwerte. Dieser Agent wird in Intervallen auf der Instanz ausgeführt, um GPU-Daten zu erfassen und an Cloud Monitoring zu senden.

  2. Sehen Sie sich die Logs in Cloud Monitoring an.

Berichtsskript für GPU-Messwerte einrichten

Voraussetzungen

Prüfen Sie auf allen VMs, ob die folgenden Anforderungen erfüllt werden:

  • An jede VM müssen GPUs angehängt sein.
  • Auf jeder VM-Instanz muss ein GPU-Treiber installiert sein.
  • Auf jeder VM muss Python 3.6 oder aktueller installiert sein.
  • Auf jeder VM müssen die Dienstprogramme virtualenv und pip installiert sein.

Agent herunterladen

Laden Sie das Monitoring-Skript in das Verzeichnis /opt/google herunter. Dazu haben Sie zwei Möglichkeiten:

  • Mit dem Dienstprogramm git herunterladen
  • Als Paket mit wget herunterladen

Git verwenden

# We need to use sudo to be able to write to /opt
sudo mkdir -p /opt/google
cd /opt/google
sudo git clone https://github.com/GoogleCloudPlatform/compute-gpu-monitoring.git

Als ZIP-Paket

# We need to use sudo to be able to write to /opt
sudo mkdir -p /opt/google
sudo wget https://github.com/GoogleCloudPlatform/compute-gpu-monitoring/archive/refs/heads/main.zip /opt/google
cd /opt/google
sudo unzip main.zip
sudo chmod -R 755 compute-gpu-monitoring
sudo rm main.zip

Virtuelle Umgebung einrichten

Zur Verwendung des Monitoring-Skripts müssen Sie die erforderlichen Module installieren. Wir empfehlen, für dieses Modul eine virtuelle Umgebung zu erstellen, die von der Python-Standardinstallation getrennt ist. Verwenden Sie zum Erstellen dieser virtuellen Umgebung entweder pipenv oder virtualenv.

virtualenv verwenden

Wenn Sie virtualenv und pip verwenden, müssen Sie die virtuelle Umgebung erstellen. Führen Sie den folgenden Befehl aus, um die VM zu erstellen:

cd /opt/google/compute-gpu-monitoring/linux
sudo virtualenv -p python3 venv
sudo venv/bin/pip install -Ur requirements.txt

pipenv verwenden

Wenn Sie pipenv verwenden, führen Sie den folgenden Befehl aus:


# Pipenv creates a virtual environment for you and installs the necessary modules.

cd /opt/google/compute-gpu-monitoring/linux
sudo pipenv sync

Agent beim Systemstart starten

Gehen Sie bei Systemen, die systemd zur Verwaltung ihrer Dienste verwenden, folgendermaßen vor, um den GPU-Monitoring-Agent der Liste der automatisch gestarteten Dienste hinzuzufügen.

virtualenv verwenden

Die Datei google_gpu_monitoring_agent_venv.service enthält eine vorbereitete Dienstdefinition für systemd für Installationen mit virtualenv.

sudo cp /opt/google/compute-gpu-monitoring/linux/systemd/google_gpu_monitoring_agent_venv.service /lib/systemd/system
sudo systemctl daemon-reload
sudo systemctl --no-reload --now enable /lib/systemd/system/google_gpu_monitoring_agent_venv.service

pipenv verwenden

Die Datei google_gpu_monitoring_agent.service enthält eine vorbereitete Dienstdefinition für systemd für Installationen mit pipenv.

sudo cp /opt/google/compute-gpu-monitoring/linux/systemd/google_gpu_monitoring_agent.service /lib/systemd/system
sudo systemctl daemon-reload
sudo systemctl --no-reload --now enable /lib/systemd/system/google_gpu_monitoring_agent.service

Messwerte in Cloud Monitoring prüfen

  1. Rufen Sie in der Google Cloud Console die Seite Metrics Explorer auf.

    Zu Monitoring

  2. Wählen Sie im Drop-down-Menü Ressourcentyp die Option VM-Instanz aus.

  3. Geben Sie im Drop-down-Menü Messwert den Wert custom/instance/gpu/utilization ein.

    Ihre GPU-Auslastung sollte der folgenden Ausgabe entsprechen:

    Cloud Monitoring-Initiierung

Nächste Schritte