Comment mesurer l'utilisation du GPU?

78

Utilisation de la topcommande dans les processus de listes de terminaux, triée en fonction de l’utilisation de leur CPU (et vous pouvez la changer pour trier par un autre paramètre)

Existe-t-il un équivalent pour le GPU?

Ce type demande à propos de la RAM utilisée par GPU

xxjjnn
la source
3
Selon vos besoins, si vous utilisez une radeon, vous pouvez utiliser radeontop . Pour nvidia, il existe un autre outil, mais je n’ai pas le nom sous la main.
Braiam

Réponses:

80
  • Pour les GPU Nvidia, il existe un outil nvidia-smi qui peut afficher l'utilisation de la mémoire, l'utilisation du GPU et la température du GPU.
  • Pour les processeurs graphiques Intel, vous pouvez utiliser les outils intel-gpu .
  • AMD a deux options

    1. fglrx (drivers source fermés):

      aticonfig --odgc --odgt
      
    2. Et pour mesa (pilotes open source), vous pouvez utiliser RadeonTop Installer via le centre de logiciel .

Source: surveillance de l'utilisation du GPU

Mitch
la source
41
Utilisez watch nvidia-smipour les mises à jour en temps réel.
Lenar Hoyt
1
aticonfig ne fonctionnera pas avec SSH. Il déclare qu’il a besoin d’un serveur X en cours d’exécution pour fonctionner (un autre est en cours d’exécution) Cependant, RadeonTop ( sudo apt-get radeontop) ne fonctionne avec le fglrx (besoin racine). Hourra! Malheureusement, RadeonTop ne fournit aucune lecture de température.
Ken Sharp
aticonfig fonctionnera sur SSH, mais un serveur X avec tcp activé doit être en cours d'exécution. Cela peut être fait en configurant lightdm via xserver-allow-tcp=true. La recherche sur ce site avec ces mots-clés devrait aboutir au résultat.
HAL 9001
Je ne sais pas pourquoi mais watch -n 1 nvidia-smim'a donné des mises à jour en temps réel. watch nvidia-smia un délai de mise à jour de 2 secondes.
markroxor
1
sudo intel_gpu_topdevrait vous donner des mises à jour en temps réel pour Intel GPU.
George D
24

Nvidia: pour mettre à jour en permanence la sortie de nvidia-smi, vous pouvez utiliser nvidia-smi --loop=1(intervalle de rafraîchissement de 1 seconde) ou nvidia-smi --loop-ms=1000(intervalle de rafraîchissement de 1000 millisecondes).

   -l SEC, --loop=SEC
       Continuously  report  query data at the specified interval, rather than
       the default of  just  once.   The  application  will  sleep  in-between
       queries.   Note  that on Linux ECC error or XID error events will print
       out during the sleep period if the -x flag was not specified.  Pressing
       Ctrl+C at any time will abort the loop, which will otherwise run indef‐
       initely.  If no argument is specified for the -l form a default  inter‐
       val of 5 seconds is used.

   -lms ms, --loop-ms=ms
       Same as -l,--loop but in milliseconds.

FYI:

Franck Dernoncourt
la source
21

Vous pouvez utiliser gpustatun simple script de ligne de commande (encapsuleur pour nvidia-smi) pour interroger et surveiller le statut du processeur graphique:

entrez la description de l'image ici

Franck Dernoncourt
la source
NOTE: Seulement pour Nvidia
Lennart Rolland
pip install gpustat
Shital Shah
15

Pour Intel:

  1. Installez intel-gpu-tools (il est probable qu'ils sont déjà installés)

    sudo apt-get install intel-gpu-tools 
    
  2. Lancez l' toputilitaire like avec

    sudo intel_gpu_top
    
  3. Vérifiez vos statistiques puis quittez avec Ctrl+C

C'est ce que tu as:

entrez la description de l'image ici

Merci @Mitch! :)

Thomas Venturini
la source
12

Vous pouvez utiliser le programme de surveillance des regards avec sa surveillance GPU plug-in:

  • Open source
  • à installer: sudo apt-get install -y python-pip; sudo pip install glances[gpu]
  • lancer: sudo glances

entrez la description de l'image ici

Il surveille également le processeur, les entrées / sorties de disque, l'espace disque, le réseau et quelques autres choses:

entrez la description de l'image ici

Franck Dernoncourt
la source
Vous devez également fairepip install nvidia-ml-py3
Paul Williams
Il fonctionne également sans sudoet quand il est prévu pour l'utilisateur uniquement: pip install --user glances[gpu]et ensuite exécuté glances.
Ivan Kovtun
8

Conky

J'aime utiliser conkycomme moniteur en temps réel pour le processeur et le processeur graphique. L'installation est simple:

sudo apt install conky

Intel i7-6700HQ iGPU HD 530

Dans ce cas, j'ai démarré en utilisant le GPU intégré plutôt que le nVidia GTX 970M:

Intel GPU.gif

Le conkycode s'adapte en fonction du démarrage avec prime-select intelou prime-select nvidia:

nVidia GPU GTX 970M

Dans ce cas, j'ai démarré en utilisant le nVidia GTX 970M plutôt que le GPU intégré:

nVidia GPU.GIF


Code de conky

Le code de conky a été récemment modifié pour détecter automatiquement le GPU. Maintenant, il n’est pas nécessaire de le modifier à la main lors du redémarrage sur un autre GPU:

#------------+
# Intel iGPU |
#------------+
${color orange}${hr 1}${if_existing /sys/class/drm/card0/gt_cur_freq_mhz}
${color2}${voffset 5}Intel® Skylake GT2 HD 530 iGPU @${alignr}${color green}
${execpi .001 (cat /sys/class/drm/card0/gt_cur_freq_mhz)} MHz
${color}${goto 13}Min. Freq:${goto 120}${color green}${execpi .001 (cat /sys/class/drm/card0/gt_min_freq_mhz)} MHz${color}${goto 210}Max. Freq:${alignr}${color green}${execpi .001 (cat /sys/class/drm/card0/gt_max_freq_mhz)} MHz
${color orange}${hr 1}${else}
#------------+
# Nvidia GPU |
#------------+
#${color orange}${hr 1}${if_match "${lsmod | grep nvidia_uvm}">""}
${color2}${voffset 5}${execpi .001 (nvidia-smi --query-gpu=gpu_name --format=csv,noheader)} ${color1}@ ${color green}${execpi .001 (nvidia-smi --query-gpu=clocks.sm --format=csv,noheader)} ${alignr}${color1}Temp: ${color green}${execpi .001 (nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader)}°C
${color1}${voffset 5}Ver: ${color green}${execpi .001 (nvidia-smi --query-gpu=driver_version --format=csv,noheader)} ${color1} P-State: ${color green}${execpi .001 (nvidia-smi --query-gpu=pstate --format=csv,noheader)} ${alignr}${color1}BIOS: ${color green}${execpi .001 (nvidia-smi --query-gpu=vbios_version --format=csv,noheader)}
${color1}${voffset 5}GPU:${color green}${execpi .001 (nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader)} ${color1}Ram:${color green}${execpi .001 (nvidia-smi --query-gpu=utilization.memory --format=csv,noheader)} ${color1}Pwr:${color green}${execpi .001 (nvidia-smi --query-gpu=power.draw --format=csv,noheader)} ${alignr}${color1}Freq: ${color green}${execpi .001 (nvidia-smi --query-gpu=clocks.mem --format=csv,noheader)}
${color orange}${hr 1}${endif}

Différentes versions de la liste de code complète peuvent être trouvées dans les réponses suivantes:

WinEunuuchs2Unix
la source
Pourriez-vous fournir les étapes pour installer conky et configurer le thème pour qu'il ressemble à votre exemple Nvidia s'il vous plaît?
Tak
@Tak J'ai mis à jour la réponse avec les instructions d'installation et les liens existants vers le code.
WinEunuuchs2Unix
6

J'utilise la commande suivante:

nvidia-smi -l 2

et il me donne des mises à jour toutes les 2 secondes.

ressemble à ça

Ou :

watch -n0.1 "nvidia-settings -q GPUUtilization -q useddedicatedgpumemory"

Et sur AMD, utilisez:

aticonfig --odgc --odgt

entrez la description de l'image ici

Tshilidzi Mudau
la source