Jinsi ya Kuchunguza na Kudhibiti GPU za NVIDIA kwenye Ubuntu kwa Kutumia nvidia-smi

1. Utangulizi

Unapotumia GPU kwenye Ubuntu, ni muhimu kufuatilia hali yake kwa usahihi. Hii ni muhimu hasa katika kazi zinazohusisha kujifunza kwa kina (deep learning) au uchoraji wa picha, ambapo kuelewa matumizi ya GPU na toleo la madereva ni lazima. Katika makala hii, tunaelezea jinsi ya kutumia nvidia-smi, chombo cha usimamizi wa GPU cha NVIDIA, na kuanzisha mbinu za kukagua taarifa za GPU kwenye Ubuntu.

2. Kukagua Taarifa za GPU kwa kutumia nvidia-smi

nvidia-smi ni chombo cha mstari wa amri kinachokuwezesha kufuatilia matumizi, matumizi ya kumbukumbu, na taarifa nyingine za kina kuhusu GPU za NVIDIA. Ni muhimu hasa wakati wa kukagua shughuli za GPU kwa wakati halisi au kupata metriki za matumizi kwa undani.

Matumizi ya Msingi

Unaweza kutumia amri ifuatayo kufuatilia matumizi ya GPU na matumizi ya kumbukumbu kwa wakati halisi:

nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1

Amri hii inarejesha taarifa za kina ikijumuisha matumizi ya GPU, matumizi ya kumbukumbu, na kumbukumbu inayopatikana. Chaguo -l linakuwezesha kuweka muda wa upya kwa sekunde.

Muundo wa Maonyesho na Matokeo ya Faili

Kwa chaguo-msingi, matokeo yanaonyeshwa katika muundo wa jedwali, lakini unaweza kuyatolea kama CSV ili kurahisisha usindikaji. Ikiwa unataka kuhifadhi taarifa kwenye faili, taja mahali unapotaka kwa kutumia chaguo -f.

nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1 -f /path/to/output.csv

Hii inakuwezesha kuhifadhi logi za matumizi ya GPU na kuzichambua baadaye.

3. Kupata Taarifa za Mchakato kwa kutumia nvidia-smi

nvidia-smi pia inakuwezesha kupata taarifa kuhusu michakato inayotumia GPU kwa sasa. Hii husaidia kubaini kiasi gani cha rasilimali za GPU kila mchakato unazitumia.

Kupata Taarifa za Mchakato

Tumia amri ifuatayo kuona PID na matumizi ya kumbukumbu ya michakato inayotumia GPU:

nvidia-smi --query-compute-apps=pid,process_name,used_memory --format=csv,noheader

Amri hii inarudisha orodha ya michakato ya GPU inayofanya kazi na inaonyesha matumizi ya kumbukumbu ya kila mchakato.

Amri ndogo ya pmon ya nvidia-smi

Chombo cha nvidia-smi pia kinajumuisha amri ndogo ya pmon, ambayo hutoa ufuatiliaji wa kina wa michakato ya GPU.

nvidia-smi pmon --delay 10 -s u -o DT

Hii inaonyesha taarifa za michakato ya GPU kwa vipindi vilivyobainishwa. Chaguo --delay linafafanua muda wa upya kwa sekunde, na unaweza kuchagua taarifa gani za kuonyesha.

4. Kusanidi na Kuthibitisha Madereva ya NVIDIA

Ili kutumia GPU ya NVIDIA kwenye Ubuntu, dereva sahihi la NVIDIA lazima liwe limewekwa. Hapa chini ni hatua za usakinishaji na uthibitisho.

Usakinishaji wa Dereva

Kwanza, sakinisha dereva sahihi la NVIDIA kwa mfumo wako kwa kutumia amri ifuatayo:

sudo apt install nvidia-driver-510

Baada ya usakinishaji kukamilika, anzisha upya mfumo wako.

Kuthibitisha Usakinishaji

Baada ya kuanzisha upya, endesha amri ifuatayo kuthibitisha kuwa dereva limewekwa kwa usahihi:

nvidia-smi

Kama toleo la dereva na toleo la CUDA vinaonekana, usakinishaji umekuwa wa mafanikio.

5. Kuthibitisha Uendeshaji wa GPU kwa TensorFlow

Unaweza pia kuthibitisha utendaji wa GPU kwa kuijaribu kwa TensorFlow, mfumo wa kujifunza mashine.

Kusanidi Anaconda

Kwanza, sakinisha Anaconda na uunde mazingira yako:

bash ./Anaconda3-2022.05-Linux-x86_64.sh
conda update -n base conda
conda update anaconda
conda update -y --all
conda install tensorflow-gpu==2.4.1

Kukagua Utambuzi wa GPU katika TensorFlow

Halafu, thibitisha kama TensorFlow inatambua GPU:

from tensorflow.python.client import device_lib
device_lib.list_local_devices()

Kama kifaa cha GPU kinatokea kwenye orodha, TensorFlow imefanikiwa kugundua GPU.

6. Ufuatiliaji wa GPU na Kurekodi

nvidia-smi inaruhusu ufuatiliaji wa GPU kwa wakati halisi na kurekodi logi. Hii husaidia kufuatilia matumizi ya GPU kwa muda na kuboresha utendaji.

Ufuatiliaji wa Muda

Ili kuweka ufuatiliaji wa muda, tumia chaguo la -l ili kubainisha muda wa sasisho, na kwa hiari rekodi data kwenye faili:

nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1 -f /var/log/gpu.log

Udhibiti Unaoweza Kupangwa Kupitia Viungo vya Python

nvidia-smi hutoa viungo vya Python (nvidia-ml-py) vinavyokuwezesha kupata taarifa za GPU kwa programu. Hii inaruhusu ufuatiliaji na udhibiti uliobinafsishwa zaidi kutoka kwa maandishi ya Python.

7. Hitimisho

nvidia-smi ni chombo chenye nguvu cha kukagua na kusimamia matumizi ya GPU za NVIDIA kwenye Ubuntu. Makala hii ilielezea matumizi ya msingi, ufuatiliaji wa michakato, usakinishaji wa dereva, na uthibitishaji wa GPU wa TensorFlow. Tumia mbinu hizi kuongeza utendaji wa GPU na kuboresha mfumo wako.