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

Я ищу команду, которая дала бы мне ту же информацию, что и:

cat /proc/cpuinfo 

За исключением графического процессора (тип чипа и памяти, частота).

Я не знаю прямого эквивалента, но lshw должен дать вам нужную информацию, попробуйте:

sudo lshw -C display

(это также работает без sudo но информация может быть менее полной / точной)

Вы также можете установить пакет lshw-gtk чтобы получить графический интерфейс.

Этот тип информации является нестандартным, и инструменты, которые вы будете использовать для ее сбора, сильно различаются.

Команда glxinfo предоставит вам всю доступную информацию OpenGL для графического процессора, включая название его поставщика, если драйверы установлены правильно.

Для получения информации о тактовой частоте стандартного инструмента не существует.

  • Для графических процессоров ATI/AMD, работающих под управлением старого драйвера Catalyst, aticonfig --odgc должен получать тактовые частоты, и aticonfig --odgt должен получить данные о температуре. Я не знаком с AMDGPU-Pro, но подобный инструмент должен существовать.
  • Для графических процессоров NVIDIA, nvidia-smi инструмент покажет всю необходимую вам информацию, включая тактовую частоту и статистику использования.

Я не знаю эквивалентного инструмента для драйверов с открытым исходным кодом или для Intel или других графических процессоров, но другую информацию об оборудовании можно получить из lspci и lshw инструменты.

Сообщение в блоге, посвященное работе, проделанной в командной строке, находится здесь:

http://www.cyberciti.biz/faq/howto-find-linux-vga-video-card-ram/

Узнайте идентификатор устройства:

 lspci | grep ' VGA ' | cut -d" " -f 103:00.0

Затем вы можете использовать этот вывод с lspci снова, формируя две вложенные команды

lspci  -v -s  $(lspci | grep ' VGA ' | cut -d" " -f 1)

Если у вас более 1 видеокарты, попробуйте вместо этого выполнить эту эквивалентную команду:

lspci | grep ' VGA ' | cut -d" " -f 1 | xargs -i lspci -v -s {}

Вывод из моей системы:

03:00.0 VGA compatible controller: NVIDIA Corporation G98 [Quadro NVS 295] (rev a1) (prog-if 00 [VGA controller])    Subsystem: NVIDIA Corporation Device 062e    Flags: bus master, fast devsel, latency 0, IRQ 24    Memory at f6000000 (32-bit, non-prefetchable) [size=16M]    Memory at ec000000 (64-bit, prefetchable) [size=64M]    Memory at f4000000 (64-bit, non-prefetchable) [size=32M]    I/O ports at dc80 [size=128]    [virtual] Expansion ROM at f7e00000 [disabled] [size=128K]    Capabilities: <access denied>    Kernel driver in use: nvidia

РЕДАКТИРОВАТЬ: Вы можете избежать <access denied> запустив с sudo

Так, (prefetchable) [size=64M) указывает на то, что у меня есть 64-мегабайтная карта NVIDIA. Однако я этого не делаю, это скорее 256 МБ. Почему? Смотреть ниже.

Чтобы узнать, как извлечь из этого максимальную пользу и повысить производительность, прочтите чрезвычайно подробную статью на Arch-Linux Wiki

https://wiki .archlinux.org/index.php/NVIDIA

Для пользователи nvidia, начните с

nvidia-smi

(Это работает с установленными драйверами Nvidia, но не с системами, в которых используется драйвер nouveau с открытым исходным кодом).

Выход

Thu Dec 19 10:54:18 2013       +------------------------------------------------------+                       | NVIDIA-SMI 5.319.60   Driver Version: 319.60         |                       |-------------------------------+----------------------+----------------------+| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC || Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. ||===============================+======================+======================||   0  Quadro NVS 295      Off  | 0000:03:00.0     N/A |                  N/A || N/A   73C  N/A     N/A /  N/A |      252MB /   255MB |     N/A      Default |+-------------------------------+----------------------+----------------------++-----------------------------------------------------------------------------+| Compute processes:                                               GPU Memory ||  GPU       PID  Process name                                     Usage      ||=============================================================================||    0            Not Supported                                               |+-----------------------------------------------------------------------------+

Это указывает на то, что у меня есть видеокарта GDDR3 объемом 256 МБ.

В настоящее время я не знаю, как получить это для графических процессоров Intel и AMD / ATI.

Бежать google-chrome и перейдите по URL-адресу about:gpu. Если chrome выяснил, как использовать OpenGL, вы получите чрезвычайно подробную информацию о вашем графическом процессоре.

Потому что вы указали команду типа cat таким образом, для процессоров это эквивалентно для графических процессоров. Специально для карт Nvidia. Для загрузки не требуется никакого программного обеспечения, кроме драйвера устройства Nvidia.

Путь здесь работает для карт, которые у меня есть. Но ваш может отличаться, как указывали другие в комментариях.

1-й графический процессор

> cat /proc/driver/nvidia/gpus/0/informationModel:       GeForce GTX 680IRQ:         24GPU UUID:    GPU-71541068-cded-8a1b-1d7e-a093a09e9842Video BIOS:      80.04.09.00.01Bus Type:    PCIeDMA Size:    40 bitsDMA Mask:    0xffffffffffBus Location:    0000:01.00.0

2-й графический процессор

> cat /proc/driver/nvidia/gpus/1/informationModel:       GeForce GTX 580IRQ:         33GPU UUID:    GPU-64b1235c-51fc-d6f1-0f0e-fa70320f7a47Video BIOS:      70.10.20.00.01Bus Type:    PCIeDMA Size:    40 bitsDMA Mask:    0xffffffffffBus Location:    0000:08.00.0

Для карт Nvidia введите

nvidia-smi -q

клинфо

sudo apt-get install clinfoclinfo

является аналогом glxinfo но для OpenCL моя настройка графического процессора описана в: https://stackoverflow.com/questions/7542808/how-to-compile-opencl-on-ubuntu/33483311#33483311

Настройки Ubuntu 20.04 -> О

Вы можете либо открыть настройки, щелкнув в правом верхнем меню, либо просто выполнить:

  • Супер ключ (ОН ЖЕ ключ Windows)
  • Введите "о компании" и выберите запись

Итак, в разделе "Графика" я вижу, что моя модель графического процессора - "Quadro M1200 / PCIe / SSE2".

enter image description here

nvidia-настройки

Смешивает время выполнения с некоторой статической информацией.

enter image description here

Более подробная информация: Как мне проверить, использует ли Ubuntu мою видеокарту NVIDIA?

Это действительно не так сложно для модели и памяти, вот 1 вкладыш, который работает для каждой видеокарты, на которой я ее тестировал, независимо от производителя (Intel, AMD, NVIDIA):

GPU=$(lspci | grep VGA | cut -d ":" -f3);RAM=$(cardid=$(lspci | grep VGA |cut -d " " -f1);lspci -v -s $cardid | grep " prefetchable"| cut -d "=" -f2);echo $GPU $RAM

Графический процессор= Все, что делает этот бит, - это захватывает 3-е поле из вывода 'lspci', отфильтрованного через 'grep' для VGA, который соответствует видеочипу.

ОПЕРАТИВНАЯ память= Все, что делает этот бит, - это устанавливает переменную cardid равно первому полю вывода из lspci соответствующий "VGA" и передает его в качестве запроса на -v подробный вывод из lspci для этого конкретного -s устройство, дополнительно фильтрующее выходные данные с помощью grep для строки "с возможностью предварительной выборки", поскольку она содержит память на самой карте (обратите внимание на предыдущий пробел, так как мы не хотим сопоставлять "без предварительной выборки" в наших выходных данных.

Для тактовой частоты на интегрированной графике Intel (протестировано на I3 и I5)

выполните команду sudo find /sys -type f -name gt_cur* -print0 | xargs -0 catЭто погружается в дерево / sys, чтобы найти файл gt_cur_freq_mhz, который на моем I3 является /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_cur_freq_mhz и печатает содержимое. что в моем случае при чрезвычайно малой нагрузке составляет 350 как в 350 МГц, что соответствует минимальной частоте, найденной в /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_min_freq_mhz и при запуске glxgears и glmark2 приводит к 1050 как и в 1050 МГц, что соответствует максимальной частоте, найденной в /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_max_freq_mhz

Для тактовых частот на картах nvidia:

nvidia-smi -stats -d procClk соответствует тактовой частоте графического процессораnvidia-smi -stats -d memClk соответствует тактовой частоте памяти.

Примечание: Я не могу протестировать вышеизложенное, так как моя надежная GeForce 210 не поддерживается, и это работает только на графических процессорах Kepler или более новых, как указано в "nvidia-smi -stats --help"

В настоящее время у меня нет никаких решений для тактовой частоты на картах AMD, и у меня нет оборудования, доступного для тестирования. Однако я скажу, что, насколько мне известно, aticonfig упомянутого в принятом ответе больше не существует, и похоже, что nvclock с тех пор он ни для чего не доступен.

Я действительно считаю, что лучшим вариантом для этого является неофетч.

# Get neofetchsudo add-apt-repository ppa:dawidd0811/neofetchsudo apt updatesudo apt install neofetch# Run neofetchneofetch

Это дает такой результат, как этот:

Экран-заставка Conky или терминала

Я использую два метода для автоматического отображения информации Nvidia GPU и Intel iGPU:

  • Conky динамически отображает информацию о графическом процессоре в режиме реального времени
  • ~/.bashrc отображает информацию о графическом процессоре при каждом открытии терминала

Четкий дисплей в реальном времени

В этом примере Conky используется для отображения текущей статистики графического процессора (Nvidia или Intel) в режиме реального времени. Conky - это легкий системный монитор, популярный среди многих энтузиастов Linux.

Отображение меняется в зависимости от того, загрузились ли вы после prime-select intel или prime-select nvidia.

Intel iGPU

gpu temp intel.gif

  • Процессор Intel iGPU показывает как Skylake GT2 HD 530 iGPU с частотой тока
  • Минимальная частота составляет 350 МГц, а максимальная составляет 1050 МГц

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

gpu temp nvidia.gif

  • Графический процессор nVidia показывает как GeForce GTX970M с текущей частотой и температурой графического процессора
  • Отображаются версия драйвера, P-состояние и версия BIOS
  • Отображается загрузка графического процессора, использование оперативной памяти, энергопотребление и частота оперативной памяти

Код Конки

Вот соответствующий скрипт Conky для Intel iGPU и Nvidia GPU:

#------------+# Intel iGPU |#------------+${color orange}${hr 1}${if_match "intel" == "${execpi 99999 prime-select query}"}${color2}${voffset 5}Intel® Skylake GT2 HD 530 iGPU @${alignr}${color green}${execpi .001 (cat /sys/class/drm/card1/gt_cur_freq_mhz)} MHz${color}${goto 13}Min. Freq:${goto 120}${color green}${execpi .001 (cat /sys/class/drm/card1/gt_min_freq_mhz)} MHz${color}${goto 210}Max. Freq:${alignr}${color green}${execpi .001 (cat /sys/class/drm/card1/gt_max_freq_mhz)} MHz${color orange}${hr 1}${else}#------------+# Nvidia GPU |#------------+${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}

~/.bashrc Экран-заставка терминала

Этот пример изменяет ~/.bashrc для отображения информации на заставке при каждом открытии терминала или всякий раз, когда вы вводите . .bashrc в командной строке командной строки.

В дополнение к neofetch отвеченный ранее, есть screenfetch что выглядит намного приятнее (IMO). Плюс в другом ответе упоминается, что он не знает, как включить iGPU в список, и это делает это:

ubuntu terminal splash.png

Дополнительные сведения о настройке см. в разделе: Экран-заставка терминала с погодой, Календарем, временем и Sysinfo?

Вкратце, только для нижнего раздела с дисплеем Ubuntu, содержащим информацию о графическом процессоре (предпоследняя строка), используйте:

sudo apt install screenfetchscreenfetch

Вы захотите поместить screenfetch командуйте нижней частью вашего ~/.bashrc файл, чтобы он появлялся каждый раз, когда вы открываете терминал.

@CharlieParker он выводит информацию о процессоре…

что делает: cat /proc/cpuinfo? какую информацию вы ищете?