Obtenir l'utilisation du GPU des cartes NVIDIA avec l'outil Linux dstat PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Obtenir l'utilisation GPU des cartes NVIDIA avec l'outil Linux dstat

La dstat est un petit outil génial qui vous permet d'obtenir des statistiques de ressources pour votre machine Linux. Il a une architecture modulaire qui vous permet de développer des plugins supplémentaires et il est facile à utiliser. Récemment, je profilais un pipeline Deep Learning développé avec Keras et Tensorflow et j'avais besoin de statistiques détaillées sur l'utilisation du processeur, du disque dur et du GPU. Les deux premiers sont disponibles prêts à l'emploi par dstat, mais pour autant que je sache, il n'y a pas de plugin pour surveiller l'utilisation du GPU pour les cartes graphiques NVIDIA.

Heureusement, il est très facile d'écrire un plugin python pour dstat. J'ai déjà envoyé une pull-request sur le repo officiel, mais comme de nouvelles versions sont publiées relativement rarement, voici quelques instructions sur la façon de configurer le Plugin d'utilisation du GPU NVIDIA dstat sur votre boîte.

Installation

Les commandes suivantes sont testées sur Ubuntu 16.04 et elles vous aideront à installer dstat, la bibliothèque de gestion Python NVIDIA et mon plugin 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

Pour obtenir toutes les statistiques par défaut ainsi que l'utilisation du GPU (pourcentage), tapez la commande suivante:

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

Pour obtenir toutes les statistiques d'utilisation de chaque GPU, utilisez la commande suivante:

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

Comment ça marche

Le plugin récupère le nombre de GPU disponibles sur le système et échantillonne 10 fois la métrique d'utilisation pour chaque GPU. Nous espérons que l'échantillonnage plusieurs fois donnera des mesures plus fluides que l'obtention d'une seule mesure. Après cela, il fait la moyenne de l'utilisation sur tous les GPU et renvoie les résultats à l'utilisateur. Le code source du plugin est disponible ici.

J'espère que vous l'apprécierez, bonne programmation GPU! 🙂

Horodatage:

Plus de Boîte de données