Supervisa el rendimiento de las GPU

Para ayudar a usar mejor los recursos, puedes realizar un seguimiento de las tasas de uso de GPU de tus instancias. Cuando conoces las tasas de uso de GPU, puedes realizar tareas como configurar grupos de instancias administrados que se pueden usar para aplicar ajuste de escala automático a los recursos en función de las necesidades.

Para revisar las métricas de GPU mediante Cloud Monitoring, sigue los pasos a continuación:

  1. En cada instancia de VM, configura la secuencia de comandos de informes de métricas de GPU. Esta secuencia de comandos realiza las siguientes tareas:

    • Instala el agente de informes de métricas de GPU. Este agente se ejecuta a intervalos en la instancia para recopilar datos de GPU y enviarlos a Cloud Monitoring.
    • Crea un campo de métricas custom/gpu_utilization en Cloud Monitoring. En este campo, se almacenan datos específicos de GPU que puedes analizar en Cloud Monitoring.
  2. Visualiza registros en Cloud Monitoring de Google Cloud

Configura la secuencia de comandos de informes de métricas de GPU

  1. En cada una de tus instancias de VM, verifica que se satisfagan los siguientes requisitos:

  2. En cada una de tus instancias de VM, instala el agente de métricas de GPU. Para instalar el agente de métricas, sigue los pasos a continuación:

    1. Descarga las secuencias de comandos de informes de métricas de GPU.

      git clone https://github.com/GoogleCloudPlatform/tensorflow-inference-tensorrt5-t4-gpu.git
    2. Cambia a la carpeta metrics_reporting.

      cd tensorflow-inference-tensorrt5-t4-gpu/metrics_reporting
    3. Configura el entorno de instalación del agente de métricas.

      pip install -r ./requirements.txt
    4. Mueve la secuencia de comandos de informes de métricas a tu directorio raíz.

      sudo cp report_gpu_metrics.py /root/
    5. Habilita el agente de métricas de GPU.

      Si usas Python 2, ejecuta el siguiente comando:

      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
      

      Si usas Python 3, ejecuta el siguiente comando:

      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 '/opt/conda/bin/python /root/report_gpu_metrics.py'
      User=root
      Group=root
      WorkingDirectory=/
      Restart=always
      [Install]
      WantedBy=multi-user.target
      EOH
      
    6. Vuelve a cargar el daemon del sistema.

      systemctl daemon-reload
    7. Habilita el servicio de supervisión de GPU.

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

Revisa métricas en Cloud Monitoring

  1. En Google Cloud Console, selecciona Monitoring o usa el siguiente botón:

    Ir a Monitoring

  2. Si el Explorador de métricas aparece en el panel de navegación, haz clic en Explorador de métricas. De lo contrario, selecciona Recursos y, luego, Explorador de métricas.

  3. Busca gpu_utilization.

    Captura de pantalla del inicio de Cloud Monitoring.

  4. El uso de GPU debe parecerse al siguiente resultado:

    Captura de pantalla de Cloud Monitoring en ejecución

  5. Configura el ajuste de escala automático con grupos de instancias administrados (opcional). Para comenzar, puedes revisar la sección de configuración de un clúster de varias zonas del instructivo de carga de trabajo de inferencia de TensorFlow.

Próximos pasos