Как измерить использование графического процессора?

Используя top команда в терминале выводит список процессов, отсортированных по их загрузке процессора (и вы можете изменить его на сортировку по другому параметру)

Есть ли эквивалент для графического процессора?

Этот парень спрашивает о оперативной памяти, используемой графическим процессором

  • Для графических процессоров Nvidia существует инструмент nvidia-smi это может показать использование памяти, загрузку графического процессора и температуру графического процессора.
  • Для графических процессоров Intel вы можете использовать intel-gpu-инструменты.
  • У AMD есть два варианта

    1. fglrx (драйверы с закрытым исходным кодом):

      aticonfig --odgc --odgt
    2. А для mesa (драйверы с открытым исходным кодом) вы можете использовать РадеонТоп Install via the software center.

Источник:Мониторинг использования графического процессора

Вы можете использовать gpustat, который представляет собой простой скрипт командной строки (оболочка для nvidia-smi) для запроса и мониторинга состояния графического процессора:

enter image description here

Nvidia: для постоянного обновления выходных данных nvidia-smi, вы можете использовать nvidia-smi --loop=1 (интервал обновления 1 секунда) или nvidia-smi --loop-ms=1000 (интервал обновления 1000 миллисекунд).

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

к вашему сведению:

Для Intel:

  1. Установите intel-gpu-tools (вполне вероятно, что они уже установлены)

    sudo apt-get install intel-gpu-tools 
  2. Начните с top как утилита с

    sudo intel_gpu_top
  3. Проверьте свою статистику, а затем выйдите с Ctrl+C

Вот что ты получаешь:

enter image description here

Спасибо @Mitch! :)

Вы можете использовать программу мониторинга взгляды с его Мониторинг графического процессора подключаемый модуль:

  • открытый исходный код
  • устанавливать: sudo apt-get install -y python-pip; sudo pip install glances[gpu]
  • для запуска: sudo glances

enter image description here

Он также контролирует процессор, ввод-вывод на диске, дисковое пространство, сеть и некоторые другие вещи:

enter image description here

Я использую следующую команду:

nvidia-smi -l 2

и это дает мне обновления каждые 2 секунды.

looks like this

Или :

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

А на AMD используйте:

aticonfig --odgc --odgt

enter image description here

Конки

Мне нравится использовать conky в качестве монитора в реальном времени как для центрального процессора, так и для графического процессора. Установка проста:

sudo apt install conky

Intel i7-6700HQ iGPU HD 530

В этом случае я загрузился с использованием встроенного графического процессора, а не nVidia GTX 970M:

Intel GPU.gif

То conky код адаптируется в зависимости от того, загружается ли он с prime-select intel или prime-select nvidia:

Графический ПРОЦЕССОР nVidia GTX 970M

В этом случае я загрузился с использованием nVidia GTX 970M, а не встроенного графического процессора:

nVidia GPU.GIF


Код Конки

Код conky был недавно изменен для автоматического определения 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}

Различные версии полного списка кодов можно найти в этих ответах:

Я только что нашел эту команду:

nvidia-smi --query-gpu=utilization.gpu --format=csv --loop=1

Вот демонстрационная версия:

enter image description here

В моем случае nvidia-smi не показал % загрузки графического процессора, только память (думаю, мой GTX 650 слишком стар).

Что действительно сработало для меня, так это Настройки сервера NVIDIA X Приложение с графическим интерфейсом (я полагаю, поставляется вместе с драйвером). Перейдите к разделу с именем GPU 0 - (Your Model) - он показывает подробную информацию о состоянии использования вашего графического процессора, обновляясь каждые 2 секунды:

enter image description here

Кроме того, если вы используете radeon, вы можете использовать radeontop, для nvidia есть еще один инструмент, но у меня нет под рукой названия.

Для nvidia это инструмент командной строки “nvidia-smi”, за исключением jetsons, где это "tegrastats`.

Для графического процессора nvidia вы можете использовать nvidia-smi -l 5, который будет предоставлять обновление каждые 5 секунд. (Измените это число, чтобы оно обновлялось с другим интервалом.)