1. Úvod
Při používání GPU v Ubuntu je nezbytné přesně sledovat její stav. To je zvláště důležité u úloh zahrnujících hluboké učení nebo grafické renderování, kde je nutné rozumět využití GPU a verzím ovladačů. V tomto článku vysvětlujeme, jak používat nvidia-smi, nástroj pro správu NVIDIA GPU, a představujeme metody pro kontrolu informací o GPU v Ubuntu.
2. Kontrola informací o GPU pomocí nvidia-smi
nvidia-smi je nástroj příkazové řádky, který vám umožňuje sledovat využití, využití paměti a další podrobné informace o NVIDIA GPU. Je zvláště užitečný při sledování aktivity GPU v reálném čase nebo při získávání podrobných metrik využití.
Základní použití
Pro sledování využití GPU a využití paměti v reálném čase můžete použít následující příkaz:
nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1
Tento příkaz získá podrobné informace včetně využití GPU, využití paměti a dostupné paměti. Volba -l vám umožní nastavit interval obnovování v sekundách.
Formát výstupu a uložení do souboru
Ve výchozím nastavení jsou výsledky zobrazovány v tabulkovém formátu, ale můžete je exportovat jako CSV pro snadnější zpracování. Pokud chcete informace uložit do souboru, specifikujte cíl pomocí volby -f.
nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1 -f /path/to/output.csv
Tím můžete uložit logy využití GPU a později je analyzovat.
3. Získání informací o procesech pomocí nvidia-smi
nvidia-smi také umožňuje získat informace o procesech, které aktuálně GPU používají. To pomáhá identifikovat, kolik GPU prostředků každému procesu spotřebovává.
Získání informací o procesech
Pro zobrazení PID a využití paměti procesů využívajících GPU použijte následující příkaz:
nvidia-smi --query-compute-apps=pid,process_name,used_memory --format=csv,noheader
Tento příkaz vrátí seznam aktivních GPU procesů a zobrazí využití paměti každého procesu.
Subpříkaz nvidia-smi pmon
Nástroj nvidia-smi obsahuje také subpříkaz pmon, který poskytuje podrobné monitorování GPU procesů.
nvidia-smi pmon --delay 10 -s u -o DT
Tento příkaz zobrazuje informace o GPU procesech v určených intervalech. Volba --delay určuje interval obnovování v sekundách a můžete si vybrat, jaké informace se mají zobrazit.
4. Instalace a ověření NVIDIA ovladačů
Pro použití NVIDIA GPU v Ubuntu je nutné nainstalovat správný NVIDIA ovladač. Níže jsou uvedeny kroky pro instalaci a ověření.
Instalace ovladače
Nejprve nainstalujte vhodný NVIDIA ovladač pro váš systém pomocí následujícího příkazu:
sudo apt install nvidia-driver-510
Po dokončení instalace restartujte systém.
Ověření instalace
Po restartu spusťte následující příkaz, abyste potvrdili, že je ovladač správně nainstalován:
nvidia-smi
Pokud se zobrazí verze ovladače a verze CUDA, instalace proběhla úspěšně. 
5. Ověření funkčnosti GPU pomocí TensorFlow
Funkčnost GPU můžete také ověřit testováním v TensorFlow, frameworku pro strojové učení.
Instalace Anacondy
Nejprve nainstalujte Anacondu a nastavte své prostředí:
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
Kontrola rozpoznání GPU v TensorFlow
Dále ověřte, zda TensorFlow rozpozná GPU:
from tensorflow.python.client import device_lib
device_lib.list_local_devices()
Pokud se zařízení GPU objeví v seznamu, TensorFlow úspěšně detekuje GPU.
6. Monitorování a logování GPU
nvidia-smi umožňuje monitorování GPU v reálném čase a zaznamenávání logů. To pomáhá sledovat využití GPU v průběhu času a optimalizovat výkon.
Periodické monitorování
Pro nastavení periodického monitorování použijte volbu -l k určení intervalu aktualizace a volitelně zaznamenávejte data do souboru:
nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1 -f /var/log/gpu.log
Programovatelné řízení pomocí Pythonových vazeb
nvidia-smi poskytuje Pythonové vazby (nvidia-ml-py), které vám umožňují programově získávat informace o GPU. To umožňuje přizpůsobenější monitorování a řízení pomocí Python skriptů.
7. Závěr
nvidia-smi je výkonný nástroj pro kontrolu a správu využití NVIDIA GPU v Ubuntu. Tento článek vysvětlil základní použití, monitorování procesů, instalaci ovladačů a ověření GPU pro TensorFlow. Použijte tyto techniky k maximalizaci výkonu GPU a optimalizaci vašeho systému.



