Uzyskanie wykorzystania GPU przez karty NVIDIA za pomocą narzędzia Linux dstat PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Uzyskanie wykorzystania GPU kart NVIDIA za pomocą narzędzia Linux dstat

Połączenia dstat jest niesamowitym małym narzędziem, które pozwala uzyskać statystyki zasobów dla twojego Linux-a. Posiada modułową architekturę, która pozwala na tworzenie dodatkowych wtyczek i jest łatwy w użyciu. Ostatnio profilowałem potok Deep Learning opracowany przy pomocy Keras i Tensorflow i potrzebowałem szczegółowych statystyk dotyczących wykorzystania procesora, dysku twardego i procesora graficznego. Pierwsze dwa są dostępne po wyjęciu z pudełka przez dstat, jednak o ile wiem, nie ma wtyczki do monitorowania wykorzystania GPU dla kart graficznych NVIDIA.

Na szczęście bardzo łatwo jest napisać wtyczkę Pythona dla dstat. Wysłałem już żądanie ściągnięcia do oficjalnego repozytorium, ale ponieważ nowe wersje są publikowane stosunkowo rzadko, oto kilka instrukcji, jak skonfigurować dstat Wtyczka do obsługi GPU NVIDIA na twoim pudełku.

Instalacja

Następujące polecenia są testowane w systemie Ubuntu 16.04 i pomogą Ci zainstalować dstat, bibliotekę Python NVIDIA Management Library i moją wtyczkę 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

Aby uzyskać wszystkie domyślne statystyki wraz z wykorzystaniem GPU (w procentach), wpisz następujące polecenie:

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

Aby uzyskać wszystkie statystyki użytkowania dla każdego GPU, użyj następującego polecenia:

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

Jak to działa?

Wtyczka pobiera liczbę dostępnych procesorów graficznych w systemie i próbkuje dziesięciokrotność wskaźnika wykorzystania każdego procesora graficznego. Miejmy nadzieję, że wielokrotne próbkowanie zwróci lepsze wskaźniki niż pojedynczy pomiar. Następnie uśrednia wykorzystanie wszystkich procesorów graficznych i zwraca wyniki użytkownikowi. Dostępny jest kod źródłowy wtyczki tutaj.

Życzymy miłego programowania na GPU! 🙂

Znak czasu:

Więcej z Skrzynka odniesienia