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.

      • Si usas Python 2, ejecuta el siguiente comando:

        pip install -r ./requirements.txt
      • Si usas Python 3, ejecuta el siguiente comando:

        pip3 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. Permite el acceso al directorio /lib/systemd/system/ de manera temporal:

      sudo chmod 777 /lib/systemd/system/
    6. 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
        
    7. Restablece los permisos en el directorio /lib/systemd/system. Ejecuta el siguiente comando:

      sudo chmod 755 /lib/systemd/system/
    8. Vuelve a cargar el daemon del sistema.

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

      sudo 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. En el panel de navegación de Monitoring, haz clic en  Explorador de métricas.

  3. Asegúrate de que la pestaña Métrica (Metric) esté seleccionada:

    Muestra la pestaña de selección de métricas.

  4. Busca gpu_utilization.

    Inicio de Cloud Monitoring.

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

    Cloud Monitoring en ejecución.

  6. 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