Obtener el uso de GPU de las tarjetas NVIDIA con la herramienta dstat de Linux PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Obtener el uso de GPU de las tarjetas NVIDIA con la herramienta dstat de Linux

El dstat es una pequeña herramienta increíble que le permite obtener estadísticas de recursos para su caja Linux. Tiene una arquitectura modular que le permite desarrollar complementos adicionales y es fácil de usar. Recientemente, estaba perfilando una canalización de aprendizaje profundo desarrollada con Keras y Tensorflow y necesitaba estadísticas detalladas sobre el uso de CPU, disco duro y GPU. Los dos primeros están disponibles de fábrica por dstat, sin embargo, hasta donde yo sé, no hay un complemento para monitorear el uso de la GPU para las tarjetas gráficas NVIDIA.

Afortunadamente, es muy fácil escribir un complemento de Python para dstat. Ya envié una solicitud de extracción en el repositorio oficial, pero dado que las nuevas versiones se lanzan con relativa poca frecuencia, aquí hay algunas instrucciones sobre cómo configurar el Complemento de uso de GPU dstat NVIDIA en tu caja.

Instalación

Los siguientes comandos se probaron en Ubuntu 16.04 y te ayudarán a instalar dstat, la biblioteca de administración de Python NVIDIA y mi complemento dstat nvidia:

sudo apt-get install dstat #install dstat
sudo pip install nvidia-ml-py #install Python NVIDIA Management Library
wget https://raw.githubusercontent.com/datumbox/dstat/master/plugins/dstat_nvidia_gpu.py
sudo mv dstat_nvidia_gpu.py /usr/share/dstat/ #move file to the plugins directory of dstat

Para obtener todas las estadísticas predeterminadas junto con el uso de GPU (porcentaje), escriba el siguiente comando:

dstat -a --nvidia-gpu

----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system-- gpu-u
usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw |total
  2   1  96   0   0   0|5816k   15M|   0     0 |   0     0 |  45k   98k|   68
  0   1  98   0   0   0|  57M  128k| 104B  902B|   0     0 |  42k   85k|   50
  8   7  84   1   0   0| 152M    0 | 292B  448B|   0     0 |  52k   93k|   39
  1   1  97   1   0   0| 111M    0 |  52B  374B|   0     0 |  51k  116k|   62
  0   1  98   1   0   0| 129M    0 |  80B  416B|   0     0 |  43k   85k|   92
  0   2  98   0   0   0|   0     0 |  52B  374B|   0     0 |  41k   83k|   81

Para obtener todas las estadísticas de uso de cada GPU, use el siguiente comando:

dstat --nvidia-gpu -f
-------------------------------------------gpu-usage-nvidia------------------------------------------
total  gpu0  gpu1  gpu2  gpu3  gpu4  gpu5  gpu6  gpu7  gpu8  gpu9 gpu10 gpu11 gpu12 gpu13 gpu14 gpu15
   19    23    22    21    21    20    22    23    25    15    18    16    16    16    18    16    14
   18    21    20    18    22    21    21    22    21    15    15    14    14    14    15    16    13
   10    14     9    13     8     9    11     9    12     9     9    10    10     8     7     9     9
   18    20    22    19    21    20    21    21    22    14    15    14    15    14    15    15    15
   20    24    22    23    24    25    22    22    22    16    16    16    16    16    16    18    16
   15    21    18    19    18    17    17    16    18    14    13    13    14    13    12    11    11
   20    24    22    22    24    25    23    24    22    16    18    16    14    17    17    17    15
   19    29    18    23    21    22    21    20    21    18    16    16    18    14    14    17    17

Cómo funciona

El complemento obtiene la cantidad de GPU disponibles en el sistema y muestra 10 veces la métrica de uso para cada GPU. Es de esperar que muestrear varias veces arroje métricas más fluidas que obtener una sola medición. Después de eso, promedia el uso en todas las GPU y devuelve los resultados al usuario. El código fuente del complemento está disponible esta página.

Espero que lo disfrutes, ¡feliz programación de GPU! 🙂

Sello de tiempo:

Mas de Caja de datos