it-swarm-pt.tech

Como medir o uso da GPU?

Usando o comando top no terminal lista os processos, classificados pelo uso da CPU (e você pode alterá-lo para classificar por outro parâmetro)

Existe um equivalente para a GPU?

Esse sujeito está perguntando sobre RAM usado pela GP

70
xxjjnn
  • Para as GPUs da Nvidia, existe uma ferramenta nvidia-smi que pode mostrar o uso da memória, a utilização da GPU e a temperatura da GPU.
  • Para as GPUs Intel, você pode usar o intel-gpu-tools .
  • AMD tem duas opções

    1. fglrx (drivers de código fechado):

      aticonfig --odgc --odgt
      
    2. E para mesa (drivers de código aberto), você pode usar RadeonTopInstall via the software center .

Fonte: monitoramento de uso da GP

73
Mitch

Nvidia: para atualizar continuamente a saída de nvidia-smi, você pode usar nvidia-smi --loop=1 (intervalo de atualização de 1 segundo) ou nvidia-smi --loop-ms=1000 (intervalo de atualização de 1000 milissegundos).

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

PARA SUA INFORMAÇÃO:

23
Franck Dernoncourt

Você pode usar gpustat , que é um simples script de linha de comando (wrapper para nvidia-smi) para consultar e monitorar o status da GPU:

enter image description here

18
Franck Dernoncourt

Para Intel:

  1. Instale o intel-gpu-tools (é provável que eles já estejam instalados)

    Sudo apt-get install intel-gpu-tools 
    
  2. Inicie o utilitário como top como

    Sudo intel_gpu_top
    
  3. Verifique suas estatísticas e saia com Ctrl+C

Isso é o que você ganha:

enter image description here

Obrigado @Mitch! :)

14
Thomas Venturini

Você pode usar o programa de monitoramento glances com seu plug-in monitor de GP :

  • código aberto
  • para instalar: Sudo apt-get install -y python-pip; Sudo pip install glances[gpu]
  • para iniciar: Sudo glances

enter image description here

Ele também monitora a CPU, disco IO, espaço em disco, rede e algumas outras coisas:

enter image description here

12
Franck Dernoncourt

Conky

Eu gosto de usar conky como um monitor em tempo real para CPU e GPU.

Intel i7-6700HQ iGPU HD 530

Neste caso eu iniciei usando o GPU integrado ao invés da nVidia GTX 970M:

Intel GPU.gif

O código conky se adapta dependendo se foi inicializado com prime-select intel ou prime-select nvidia:

nVidia GPU GTX 970M

Neste exemplo, eu inicializei usando a nVidia GTX 970M em vez da GPU integrada:

nVidia GPU.GIF


Código Conky

O código conky foi modificado recentemente para detectar automaticamente a GPU. Agora não precisa ser modificado manualmente ao reinicializar para uma GPU diferente:

#------------+
# 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}
7
WinEunuuchs2Unix

Eu uso o seguinte comando:

nvidia-smi -l 2

e me dá atualizações a cada 2 segundos.

looks like this

Ou:

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

E na AMD, use:

aticonfig --odgc --odgt

enter image description here

6
Tshilidzi Mudau