Come misurare l'utilizzo della GPU?


78

Utilizzando il topcomando nei processi degli elenchi di terminali, ordinati in base all'utilizzo della CPU (e puoi cambiarlo per ordinarli in base a un altro parametro)

Esiste un equivalente per la GPU?

Questo collega chiede informazioni sulla RAM utilizzata dalla GPU


3
Dipendendo, se stai usando un radeon puoi usare radeontop , per nvidia c'è un altro strumento ma non ho il nome a portata di mano.
Braiam,

Risposte:


80
  • Per le GPU Nvidia esiste uno strumento nvidia-smi che può mostrare l'utilizzo della memoria, l'utilizzo della GPU e la temperatura della GPU.
  • Per le GPU Intel puoi usare intel-gpu-tools .
  • AMD ha due opzioni

    1. fglrx (driver a sorgente chiuso):

      aticonfig --odgc --odgt
      
    2. E per mesa (driver open source), puoi usare RadeonTop Installa tramite il centro software .

Fonte: monitoraggio dell'utilizzo della GPU


41
Utilizzare watch nvidia-smiper aggiornamenti in tempo reale.
Lenar Hoyt,

1
aticonfig non funzionerà su SSH. Afferma che ha bisogno di un server X in esecuzione per funzionare (ce n'è uno in esecuzione). Tuttavia, RadeonTop ( sudo apt-get radeontop) non funziona con il fglrx (necessita root). Evviva! Purtroppo RadeonTop non fornisce alcuna lettura della temperatura.
Ken Sharp,

aticonfig funzionerà su SSH, ma deve essere in esecuzione un server X con tcp abilitato. Questo può essere fatto configurando lightdm tramite xserver-allow-tcp=true. La ricerca in questo sito con queste parole chiave dovrebbe portare al risultato.
HAL 9001,

Non so perché, ma watch -n 1 nvidia-smimi ha dato aggiornamenti in tempo reale. watch nvidia-smiha un ritardo di aggiornamento di 2 secondi.
markroxor,

1
sudo intel_gpu_topdovrebbe darti aggiornamenti in tempo reale per intel gpus.
George D,

24

Nvidia: per aggiornare continuamente l'output di nvidia-smi, è possibile utilizzare nvidia-smi --loop=1(intervallo di aggiornamento di 1 secondo) o nvidia-smi --loop-ms=1000(intervallo di aggiornamento di 1000 millisecondi).

   -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.

PER TUA INFORMAZIONE:



15

Per Intel:

  1. Installa intel-gpu-tools (è probabile che siano già installati)

    sudo apt-get install intel-gpu-tools 
    
  2. Inizia l' toputilità simile con

    sudo intel_gpu_top
    
  3. Controlla le tue statistiche e poi esci con Ctrl+C

Questo è ciò che ottieni:

inserisci qui la descrizione dell'immagine

Grazie @Mitch! :)


12

Puoi utilizzare gli sguardi del programma di monitoraggio con il suo plug-in di monitoraggio GPU :

  • open source
  • installare: sudo apt-get install -y python-pip; sudo pip install glances[gpu]
  • lanciare: sudo glances

inserisci qui la descrizione dell'immagine

Monitora anche CPU, I / O disco, spazio su disco, rete e alcune altre cose:

inserisci qui la descrizione dell'immagine


Devi anche farlopip install nvidia-ml-py3
Paul Williams il

Funziona anche senza sudoe quando richiesto solo per l'utente: pip install --user glances[gpu]e quindi eseguito glances.
Ivan Kovtun,

8

Conky

Mi piace usare conkycome monitor in tempo reale sia per CPU che GPU. L'installazione è semplice:

sudo apt install conky

Intel i7-6700HQ iGPU HD 530

In questo caso ho avviato utilizzando la GPU integrata anziché la nVidia GTX 970M:

Intel GPU.gif

Il conkycodice si adatta a seconda dell'avvio con prime-select intelo prime-select nvidia:

GPU nVidia GTX 970M

In questo caso ho avviato utilizzando nVidia GTX 970M anziché la GPU integrata:

nVidia GPU.GIF


Codice Conky

Il codice conky è stato recentemente modificato per rilevare automaticamente la GPU. Ora non è necessario modificarlo manualmente al riavvio di un'altra 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}

Diverse versioni dell'elenco completo dei codici sono disponibili in queste risposte:


Potresti fornire i passaggi per installare Conky e impostare il tema in modo che sia simile al tuo esempio Nvidia, per favore?
Tak

@ Ho aggiornato la risposta con le istruzioni di installazione e i collegamenti esistenti al codice.
WinEunuuchs2Unix

6

Uso il seguente comando:

nvidia-smi -l 2

e mi dà aggiornamenti ogni 2 secondi.

Somiglia a questo

O :

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

E su AMD, utilizzare:

aticonfig --odgc --odgt

inserisci qui la descrizione dell'immagine

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.