الحصول على استخدام GPU لبطاقات NVIDIA باستخدام أداة Linux dstat PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.

الحصول على استخدام GPU لبطاقات NVIDIA باستخدام أداة Linux dstat

dstat هي أداة صغيرة رائعة تتيح لك الحصول على إحصائيات الموارد لمربع Linux الخاص بك. يحتوي على بنية معيارية تسمح لك بتطوير مكونات إضافية وسهلة الاستخدام. كنت مؤخرًا أقوم بإعداد ملف تعريف لخط أنابيب التعلم العميق الذي تم تطويره باستخدام Keras و Tensorflow وكنت بحاجة إلى إحصائيات مفصلة حول استخدام وحدة المعالجة المركزية والقرص الصلب ووحدة معالجة الرسومات. الأولان متاحان خارج الصندوق عن طريق dstat ، ولكن بقدر ما أعرف لا يوجد مكون إضافي لمراقبة استخدام GPU لبطاقات رسومات NVIDIA.

لحسن الحظ ، من السهل جدًا كتابة مكون إضافي من Python لـ dstat. لقد أرسلت بالفعل طلب سحب على الريبو الرسمي ، ولكن بما أن الإصدارات الجديدة يتم إصدارها نادرًا نسبيًا ، فإليك بعض الإرشادات حول كيفية إعداد البرنامج المساعد لاستخدام dstat NVIDIA GPU على صندوقك.

التنزيل

تم اختبار الأوامر التالية على Ubuntu 16.04 وستساعدك على تثبيت dstat ومكتبة إدارة Python NVIDIA والمكوِّن الإضافي 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

للحصول على جميع الإحصائيات الافتراضية جنبًا إلى جنب مع استخدام GPU (النسبة المئوية) ، اكتب الأمر التالي:

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

للحصول على جميع إحصاءات الاستخدام لكل وحدة معالجة رسومات ، استخدم الأمر التالي:

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

كيف يعمل

يجلب المكون الإضافي عدد وحدات معالجة الرسومات المتاحة على النظام ويأخذ عينات 10 أضعاف مقياس الاستخدام لكل وحدة معالجة رسومات. يؤمل أن يؤدي أخذ العينات عدة مرات إلى ظهور مقاييس أكثر سلاسة من الحصول على قياس واحد. بعد ذلك ، يقوم بحساب متوسط ​​الاستخدام عبر جميع وحدات معالجة الرسومات ويعيد النتائج إلى المستخدم. الكود المصدري للمكوِّن الإضافي متاح هنا.

أتمنى أن تستمتع بها ، برمجة GPU سعيدة! 🙂

الطابع الزمني:

اكثر من داتومبوكس