Szukam polecenia, które dałoby mi te same informacje, co:
cat /proc/cpuinfo
Z wyjątkiem GPU (rodzaj układu i pamięci, częstotliwość).
Szukam polecenia, które dałoby mi te same informacje, co:
cat /proc/cpuinfo
Z wyjątkiem GPU (rodzaj układu i pamięci, częstotliwość).
Odpowiedzi:
Tego rodzaju informacje są niestandardowe, a narzędzia, których będziesz używać do ich gromadzenia, różnią się znacznie.
Polecenie glxinfo
poda wszystkie dostępne informacje o OpenGL dla procesora graficznego, w tym nazwę jego dostawcy, jeśli sterowniki są poprawnie zainstalowane.
Aby uzyskać informacje o prędkości zegara, nie ma standardowego narzędzia.
aticonfig --odgc
pobierze częstotliwości taktowania i aticonfig --odgt
pobierze dane dotyczące temperatury.nvclock
program pobierze te same informacje.Nie znam równoważnego narzędzia dla sterowników typu open source, Intel lub innych układów GPU.
Inne informacje o sprzęcie można pobrać z narzędzi lspci
i lshw
.
mesa-utils
Ubuntu.
aticonfig
nie wydaje się być dostępny od czasu wycofania fglrx. nvclock
wydaje się również, że został porzucony, ponieważ ostatnia wersja była godna zaufania. Czy masz jakieś zaktualizowane rozwiązania? Oto, co mam do tej pory ..
glxinfo | grep "Device"
działał wystarczająco dobrze dla mnie na procesorze graficznym Intel
glxinfo | egrep -i 'device|memory'
Nie znam bezpośredniego odpowiednika, ale lshw powinien dać ci potrzebne informacje, spróbuj:
sudo lshw -C display
(działa również bez, sudo
ale informacje mogą być mniej kompletne / dokładne)
Możesz także zainstalować pakiet, lshw-gtk
aby uzyskać GUI.
product: 2nd Generation Core Processor Family Integrated Graphics Controller
Wpis na blogu poświęcony pracy wykonanej w wierszu polecenia znajduje się tutaj:
http://www.cyberciti.biz/faq/howto-find-linux-vga-video-card-ram/
Znajdź identyfikator urządzenia:
lspci | grep ' VGA ' | cut -d" " -f 1
03:00.0
Następnie możesz użyć tego wyjścia lspci
ponownie, tworząc dwa zagnieżdżone polecenia
lspci -v -s $(lspci | grep ' VGA ' | cut -d" " -f 1)
Jeśli masz więcej niż 1 kartę GPU, spróbuj zamiast tego wykonać to równoważne polecenie:
lspci | grep ' VGA ' | cut -d" " -f 1 | xargs -i lspci -v -s {}
Dane wyjściowe z mojego systemu:
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
EDYCJA: Możesz tego uniknąć <access denied>
, uruchamiając za pomocąsudo
Tak, (prefetchable) [size=64M)
wskazuje, że mam kartę 64 MB NVIDIA. Jednak nie, to raczej 256 MB. Dlaczego? Patrz poniżej.
Aby dowiedzieć się, jak uzyskać z tego jak najwięcej informacji i wydajność, przeczytaj niezwykle obszerny artykuł na Arch-Linux Wiki
https://wiki.archlinux.org/index.php/NVIDIA
W przypadku użytkowników nvidii zacznij od
nvidia-smi
(Działa to z zainstalowanymi sterownikami Nvidia, ale nie z systemami z otwartym sterownikiem „nouveau”).
Wynik
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 |
+-----------------------------------------------------------------------------+
Oznacza to, że mam kartę graficzną GDDR3 256 MB.
W tej chwili nie wiem, jak to zrobić dla procesorów graficznych Intel i AMD / ATI.
nvidia-smi
(moim zdaniem należy to trochę podkreślić)
nvidia-smi
nie pokazuje mi pełnej nazwy GPU.
Uruchom google-chrome
i przejdź do adresu URL about:gpu
. Jeśli Chrome zorientował się, jak korzystać z OpenGL, otrzymasz niezwykle szczegółowe informacje na temat twojego GPU.
chromium-browser
).
Ponieważ podano polecenie takie jak cat
dla procesorów, jest to zatem odpowiednik dla procesorów graficznych. Specjalnie dla kart Nvidia. Nie wymaga ładowania żadnego oprogramowania oprócz sterownika urządzenia Nvidia.
Ścieżka tutaj działa dla kart, które mam. Ale twoje mogą się różnić, jak zauważyli inni w komentarzach.
1. GPU
> cat /proc/driver/nvidia/gpus/0/information
Model: GeForce GTX 680
IRQ: 24
GPU UUID: GPU-71541068-cded-8a1b-1d7e-a093a09e9842
Video BIOS: 80.04.09.00.01
Bus Type: PCIe
DMA Size: 40 bits
DMA Mask: 0xffffffffff
Bus Location: 0000:01.00.0
2. GPU
> cat /proc/driver/nvidia/gpus/1/information
Model: GeForce GTX 580
IRQ: 33
GPU UUID: GPU-64b1235c-51fc-d6f1-0f0e-fa70320f7a47
Video BIOS: 70.10.20.00.01
Bus Type: PCIe
DMA Size: 40 bits
DMA Mask: 0xffffffffff
Bus Location: 0000:08.00.0
cat /proc/driver/nvidia/gpus/0000\:01\:00.0/information
dla mnie)
0000:3b:00.0
ani 0000:d8:00.0
dla mnie, więc powinniśmy wpisać: cat /proc/driver/nvidia/gpus/0000:3b:00.0/information
. Piękny Tesla V100-PCIE-16GB
model pokazuje, że qsub
limit pracy jest spełniony zgodnie z życzeniem.
clinfo
sudo apt-get install clinfo
clinfo
jest odpowiednikiem glxinfo
ale dla OpenCL.
ustawienia nvidia
Łączy środowisko wykonawcze z pewnymi informacjami statycznymi.
Więcej informacji: Jak sprawdzić, czy Ubuntu używa mojej karty graficznej NVIDIA?
Wierzę, że najlepszą opcją dla tego jest Neofetch .
# Get neofetch
sudo add-apt-repository ppa:dawidd0811/neofetch
sudo apt update
sudo apt get neofetch
# Run neofetch
neofetch
Daje to taki wynik:
screenfetch
Program robi to samo i nie wymaga instalowania PPA.
Używam dwóch metod do automatycznego wyświetlania informacji o GPU nVidia i Intel iGPU:
~/.bashrc
wyświetla informacje o GPU przy każdym otwarciu terminalaW tym przykładzie Conky wyświetla bieżące statystyki GPU (nVidia lub Intel). Conky to lekki monitor systemowy popularny wśród wielu entuzjastów Linuksa.
Wyświetlacz zmienia się w zależności od tego, czy uruchomiłeś po prime-select intel
lub prime-select nvidia
.
Skylake GT2 HD 530 iGPU
przy bieżącej częstotliwości350
MHz, a maksymalna to 1050
MHzGeForce GTX970M
przy bieżącej częstotliwości i temperaturze GPUOto odpowiedni skrypt Conky dla procesorów Intel iGPU i nVidia:
#------------+
# 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
Ekran powitalny terminalaTen przykład modyfikuje ~/.bashrc
wyświetlanie informacji na ekranie powitalnym za każdym razem, gdy terminal jest otwierany lub za każdym razem, gdy piszesz . .bashrc
po znaku zachęty powłoki.
Oprócz neofetch
wcześniejszych odpowiedzi, jest coś, screenfetch
co wygląda o wiele ładniej (IMO). Dodatkowo inna odpowiedź wspomina, że nie wie, jak uzyskać listę iGPU i robi to:
Aby uzyskać szczegółowe informacje na temat konfiguracji, patrz: Ekran powitalny terminala z pogodą, kalendarzem, czasem i Sysinfo?
Podsumowując tylko w dolnej części z wyświetlaczem Ubuntu zawierającym informacje o GPU (druga linia):
sudo apt install screenfetch
screenfetch
Będziesz chciał umieścić screenfetch
polecenie na dole ~/.bashrc
pliku, aby pojawiało się ono przy każdym otwarciu terminala.
Aby znaleźć podstawy, zgodnie z https://wiki.debian.org/NvidiaGraphicsDrivers#NVIDIA_Proprietary_Driver ,
lspci | grep VGA
Jeśli potrzebujesz więcej szczegółów niż to, patrz @ KNB za odpowiedź na to samo pytanie.
To naprawdę nie jest tak skomplikowane Dla modelu i pamięci, oto 1 linijka, która działa na każdej karcie wideo, na której testowałem ją bez względu na producenta (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
GPU = Wszystko, co robi ten bit, to pobranie trzeciego pola z wyjścia „lspci” filtrowanego przez „grep” dla VGA, który odpowiada układowi wideo.
RAM = Wszystko, co robi ten bit, jest ustawiane na zmienną cardid
równą pierwszemu polu danych wyjściowych z lspci
dopasowanego „VGA” i przekazuje je jako żądanie -v
pełnego wyjścia lspci
dla tego konkretnego -s
urządzenia, dodatkowo filtrując dane wyjściowe według grep
ciągu „do pobrania”, ponieważ zawiera pamięć na samej karcie (zwróć uwagę na poprzednią spację, ponieważ nie chcemy dopasować „niepenowalnego” w naszym wyniku.
Dla częstotliwości taktowania zintegrowanej grafiki Intel (Testowane na I3 i I5)
Wykonaj polecenie sudo find /sys -type f -name gt_cur* -print0 | xargs -0 cat
To nurkuje w drzewie / sys, aby zlokalizować plik gt_cur_freq_mhz, który na moim I3 jest /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_cur_freq_mhz
i drukuje zawartość. który w moim przypadku przy bardzo małym obciążeniu jest 350
jak w 350 MHz, co odpowiada minimalnej częstotliwości stwierdzonej w /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_min_freq_mhz
i podczas pracy glxgears
i glmark2
daje wynik
1050
jak w 1050 MHz, co odpowiada maksymalnej częstotliwości znalezionej w/sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_max_freq_mhz
W przypadku częstotliwości taktowania na kartach NVIDIA:
nvidia-smi -stats -d procClk
odpowiada zegarowi GPU
nvidia-smi -stats -d memClk
odpowiada zegarowi pamięci.
Uwaga: nie jestem w stanie przetestować powyższego, ponieważ mój sprawdzony GeForce 210 nie jest obsługiwany, a to działa tylko na Kepler lub nowszych procesorach graficznych, jak wskazuje `nvidia-smi -stats --help '
Obecnie nie mam żadnych rozwiązań dotyczących częstotliwości taktowania kart AMD i nie mam sprzętu dostępnego do testowania. Powiem jednak, że zgodnie z moją najlepszą wiedzą, aticonfig
wspomniana w zaakceptowanej odpowiedzi już nie istnieje i wydaje się, że nvclock
nie jest dostępna na nic, ponieważ jest wiarygodna.
Jeśli chcesz mieć proste informacje, możesz spróbować gpustat . To jest bardzo dobre i proste.
Autor podaje następujące instrukcje instalacji:
Zainstaluj z PyPI:
pip install gpustat
Aby zainstalować najnowszą wersję (gałąź master) przez pip:
pip install git+https://github.com/wookayin/gpustat.git@master
Jeśli nie masz uprawnień roota, spróbuj zainstalować na nazw użytkownika:
pip install --user
. Zauważ, że od wersji 0.4gpustat.py
nie jest już wykonywalny plik wykonywalny zależny od zera. Jednak w rzadkich przypadkach potrzebujesz jednego skryptu wykonywalnego (starszego typu), możesz także spróbować:wget https://raw.githubusercontent.com/wookayin/gpustat/v0.3.2/gpustat.py -O ~/.local/bin/gpustat chmod +x ~/.local/bin/gpustat # Assuming ~/.local/bin is in your $PATH
Cóż, ta odpowiedź zakłada, że masz serwer z procesorami graficznymi NVIDIA. Masz trzy sposoby:
Aby uzyskać krótką treść: nvidia-smi
Aby uzyskać szczegółowe jedno: nvidia-smi -q
. Otrzymasz wiele ekranów szczegółowych informacji, jeśli masz więcej niż 1 GPU.
Zrobić ls /proc/driver/nvidia/gpus/
. Wyświetli lokalizację magistrali GPU jako foldery. Teraz uruchom następujące polecenie dla każdej lokalizacji magistrali GPU. Wpisz <gpu-id>
lokalizację autobusu:cat /proc/driver/nvidia/gpus/<gpu_id>/information
W przypadku procesora Intel GMA950 (w szczególności z EeePC) możesz uruchomić:
setpci -s 00:02.0 f0.b
która zwróci „00” dla 200 MHz, „01” dla 250 MHz lub „03” dla 400 MHz. Możesz być w stanie zastosować tę samą zasadę do innych kart Intel.
Jeśli masz kartę AMD Radeon, możesz chcieć uruchomić następujące polecenia
sudo update-pciids #optional command, requires internet
lspci -nn | grep -E 'VGA|Display'
Powinien zgłosić coś takiego
00:01.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Wani [Radeon R5/R6/R7 Graphics] [1002:9874] (rev c5)
03:00.0 Display controller [0380]: Advanced Micro Devices, Inc. [AMD/ATI] Sun XT [Radeon HD 8670A/8670M/8690M / R5 M330 / M430 / R7 M520] [1002:6660] (rev ff)
Użyj lspci
, lspci -v
aby uzyskać podstawowe informacje, patrz tutaj .
W moim przypadku, na przykład, kiedy biegnę lspci
i mam:
dina@dina-X450LA:~$ lspci
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b)
00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 0b)
00:14.0 USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
00:16.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04)
00:1b.0 Audio device: Intel Corporation 8 Series HD Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 1 (rev e4)
00:1c.2 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 3 (rev e4)
00:1c.3 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 4 (rev e4)
00:1d.0 USB controller: Intel Corporation 8 Series USB EHCI #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation 8 Series LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 8 Series SATA Controller 1 [AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 8 Series SMBus Controller (rev 04)
02:00.0 Ethernet controller: Qualcomm Atheros QCA8171 Gigabit Ethernet (rev 10)
03:00.0 Network controller: Ralink corp. RT3290 Wireless 802.11n 1T/1R PCIe
03:00.1 Bluetooth: Ralink corp. RT3290 Bluetooth
Aby uzyskać wszystkie informacje o procesorze graficznym, możesz użyć następującego polecenia określonego przez @greyfade.
> glxinfo
Jeśli jednak program nie glxinfo
jest obecnie zainstalowany, możesz go zainstalować, wpisując:
> sudo apt install mesa-utils
Będziesz także musiał włączyć komponent o nazwie universe
. Gdy to zrobisz, glxinfo
wyświetli listę wszystkich specyfikacji związanych z procesorem graficznym w tym środowisku.
cat /proc/cpuinfo
robi? jakich informacji szukasz?