GPU-Leistung überwachen

Zur besseren Ressourcenauslastung können Sie die GPU-Nutzungsraten Ihrer Instanzen verfolgen. Wenn Sie die GPU-Nutzungsraten kennen, können Sie Arbeitsschritte 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 führt die folgenden Aufgaben aus:

    • 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.
    • Erstellt In Cloud Monitoring das Messwertfeld custom/gpu_utilization. In diesem Feld werden GPU-spezifische Daten gespeichert, die Sie in Cloud Monitoring analysieren können.
  2. Sehen Sie sich die Logs in Cloud Monitoring an.

Berichtsskript für GPU-Messwerte einrichten

  1. Prüfen Sie auf allen VM-Instanzen, ob die folgenden Anforderungen erfüllt werden:

  2. Installieren Sie auf jeder VM-Instanz den GPU-Messwert-Agent. Gehen Sie dazu so vor:

    1. Laden Sie das Berichtsskript für GPU-Messwerte herunter:

      git clone https://github.com/GoogleCloudPlatform/tensorflow-inference-tensorrt5-t4-gpu.git
    2. Wechseln Sie zum Ordner metrics_reporting.

      cd tensorflow-inference-tensorrt5-t4-gpu/metrics_reporting
    3. Richten Sie die Installationsumgebung für den Messwert-Agent ein:

      pip install -r ./requirements.txt
    4. Verschieben Sie das Messwert-Berichtsskript in Ihr Stammverzeichnis:

      sudo cp report_gpu_metrics.py /root/
    5. Aktivieren Sie den GPU-Messwert-Agent:

      cat <<-EOH > /lib/systemd/system/gpu_utilization_agent.service
      [Unit]
      Description=GPU Utilization Metric Agent
      [Service]
      PIDFile=/run/gpu_agent.pid
      ExecStart=/bin/bash --login -c '/usr/bin/python /root/report_gpu_metrics.py'
      User=root
      Group=root
      WorkingDirectory=/
      Restart=always
      [Install]
      WantedBy=multi-user.target
      EOH
      
    6. Laden Sie den System-Daemon neu:

      systemctl daemon-reload
    7. Aktivieren Sie den GPU-Monitoringdienst:

      systemctl --no-reload --now enable /lib/systemd/system/gpu_utilization_agent.service

Messwerte in Cloud Monitoring prüfen

  1. Wählen Sie in der Google Cloud Console Monitoring aus oder klicken Sie auf die folgende Schaltfläche:

    Zu Monitoring

  2. Wenn im Navigationsbereich der Metrics Explorer angezeigt wird, klicken Sie auf Metrics Explorer. Wählen Sie andernfalls Ressourcen und dann Metrics Explorer aus.

  3. Suchen Sie nach gpu_utilization.

    Screenshot: Initiierung von Cloud Monitoring

  4. Ihre GPU-Auslastung sollte der folgenden Ausgabe entsprechen:

    Screenshot: Cloud Monitoring in Ausführung

  5. (Optional) Richten Sie Autoscaling mithilfe verwalteter Instanzgruppen ein. Für den Anfang können Sie den Abschnitt Mehrzonencluster einrichten in der Anleitung zu TensorFlow-Inferenzarbeitslasten lesen.

Nächste Schritte