- 1 1. Introduction
- 2 2. Vérification des informations du GPU avec nvidia‑smi
- 3 3. Récupération des informations de processus avec nvidia‑smi
- 4 4. Installation et vérification des pilotes NVIDIA
- 5 5. Vérification du fonctionnement du GPU avec TensorFlow
- 6 6. Surveillance et journalisation du GPU
- 7 7. Conclusion
1. Introduction
Lorsque vous utilisez un GPU sous Ubuntu, il est essentiel de surveiller son état avec précision. Cela revêt une importance particulière dans les charges de travail de deep learning ou de rendu graphique, où la compréhension de l’utilisation du GPU et des versions des pilotes est indispensable. Dans cet article, nous expliquons comment utiliser nvidia‑smi, l’outil de gestion des GPU NVIDIA, et présentons des méthodes pour vérifier les informations du GPU sous Ubuntu.
2. Vérification des informations du GPU avec nvidia‑smi
nvidia‑smi est un outil en ligne de commande qui vous permet de surveiller l’utilisation, la consommation de mémoire et d’autres informations détaillées sur les GPU NVIDIA. Il est particulièrement utile pour vérifier l’activité du GPU en temps réel ou récupérer des métriques d’utilisation détaillées.
Utilisation de base
Vous pouvez utiliser la commande suivante pour surveiller l’utilisation du GPU et la consommation de mémoire en temps réel :
nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1
Cette commande récupère des informations détaillées incluant l’utilisation du GPU, la consommation de mémoire et la mémoire disponible. L’option -l vous permet de définir l’intervalle de rafraîchissement en secondes.
Format d’affichage et sortie vers un fichier
Par défaut, les résultats sont affichés sous forme de tableau, mais vous pouvez les exporter au format CSV pour faciliter le traitement. Si vous souhaitez enregistrer les informations dans un fichier, indiquez la destination avec l’option -f.
nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1 -f /path/to/output.csv
Cela vous permet de sauvegarder les journaux d’utilisation du GPU et de les analyser ultérieurement.
3. Récupération des informations de processus avec nvidia‑smi
nvidia‑smi vous permet également d’obtenir des informations sur les processus qui utilisent actuellement le GPU. Cela aide à identifier la quantité de ressources GPU consommées par chaque processus.
Obtention des informations de processus
Utilisez la commande suivante pour afficher le PID et la consommation de mémoire des processus qui utilisent le GPU :
nvidia-smi --query-compute-apps=pid,process_name,used_memory --format=csv,noheader
Cette commande renvoie une liste des processus GPU actifs et indique la consommation de mémoire de chaque processus.
Sous-commande pmon de nvidia‑smi
L’outil nvidia‑smi comprend aussi une sous‑commande pmon, qui fournit une surveillance détaillée des processus GPU.
nvidia-smi pmon --delay 10 -s u -o DT
Cela affiche les informations des processus GPU à des intervalles spécifiés. L’option --delay définit l’intervalle de rafraîchissement en secondes, et vous pouvez choisir quelles informations afficher.
4. Installation et vérification des pilotes NVIDIA
Pour utiliser un GPU NVIDIA sous Ubuntu, le pilote NVIDIA approprié doit être installé. Voici les étapes d’installation et de vérification.
Installation du pilote
Installez d’abord le pilote NVIDIA adapté à votre système avec la commande suivante :
sudo apt install nvidia-driver-510
Une fois l’installation terminée, redémarrez votre système.
Vérification de l’installation
Après le redémarrage, exécutez la commande suivante pour confirmer que le pilote est correctement installé :
nvidia-smi
Si la version du pilote et la version CUDA s’affichent, l’installation a réussi.
5. Vérification du fonctionnement du GPU avec TensorFlow
Vous pouvez également vérifier la fonctionnalité du GPU en le testant avec TensorFlow, un framework d’apprentissage automatique.
Installation d’Anaconda
Installez d’abord Anaconda et configurez votre environnement :
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
Vérification de la reconnaissance du GPU par TensorFlow
Ensuite, vérifiez si TensorFlow reconnaît le GPU :
from tensorflow.python.client import device_lib
device_lib.list_local_devices()
Si le dispositif GPU apparaît dans la liste, TensorFlow détecte correctement le GPU.
6. Surveillance et journalisation du GPU
nvidia‑smi permet la surveillance du GPU en temps réel ainsi que l’enregistrement de journaux. Cela aide à suivre l’utilisation du GPU sur la durée et à optimiser les performances.
Surveillance périodique
Pour configurer la surveillance périodique, utilisez l’option -l pour spécifier l’intervalle de mise à jour, et éventuellement consignez les données dans un fichier :
nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1 -f /var/log/gpu.log
Contrôle programmable via les liaisons Python
nvidia-smi fournit des liaisons Python (nvidia-ml-py) qui vous permettent de récupérer les informations du GPU de manière programmatique. Cela permet une surveillance et un contrôle plus personnalisés depuis des scripts Python.
7. Conclusion
nvidia-smi est un outil puissant pour vérifier et gérer l’utilisation des GPU NVIDIA sous Ubuntu. Cet article a expliqué l’utilisation de base, la surveillance des processus, l’installation du pilote et la vérification du GPU TensorFlow. Utilisez ces techniques pour maximiser les performances du GPU et optimiser votre système.
