Antworten:
Diese Art von Informationen entspricht nicht dem Standard, und die Tools, mit denen Sie sie sammeln, variieren erheblich.
Mit dem Befehl erhalten glxinfo
Sie alle verfügbaren OpenGL-Informationen für den Grafikprozessor, einschließlich des Anbieternamens, wenn die Treiber korrekt installiert sind.
Es gibt kein Standardwerkzeug, um Informationen zur Taktfrequenz abzurufen.
aticonfig --odgc
die Taktraten und aticonfig --odgt
die Temperaturdaten ab.nvclock
Programm dieselben Informationen ab.Mir ist kein vergleichbares Tool für die Open Source-Treiber oder für Intel oder andere GPUs bekannt.
Weitere Informationen zur Hardware können über die Tools lspci
und abgerufen lshw
werden.
mesa-utils
auf Ubuntu geliefert .
aticonfig
scheint seit dem Ausscheiden von fglrx nicht mehr verfügbar zu sein. nvclock
scheint auch aufgegeben worden zu sein, da die letzte Version für vertrauenswürdig war. Haben Sie aktualisierte Lösungen? Folgendes habe ich bisher ..
glxinfo | grep "Device"
funktionierte gut genug für mich auf einer Intel-GPU
glxinfo | egrep -i 'device|memory'
Ich kenne keine direkte Entsprechung, aber lshw sollte Ihnen die gewünschten Informationen geben. Versuchen Sie Folgendes :
sudo lshw -C display
(Es funktioniert auch ohne, sudo
aber die Informationen sind möglicherweise weniger vollständig / genau.)
Sie können das Paket auch installieren lshw-gtk
, um eine GUI zu erhalten.
product: 2nd Generation Core Processor Family Integrated Graphics Controller
Ein Blog-Beitrag, der sich mit der Arbeit auf der Kommandozeile befasst, ist hier:
http://www.cyberciti.biz/faq/howto-find-linux-vga-video-card-ram/
Finden Sie die Geräte-ID heraus:
lspci | grep ' VGA ' | cut -d" " -f 1
03:00.0
Sie können diese Ausgabe dann mit lspci
erneut verwenden und zwei verschachtelte Befehle bilden
lspci -v -s $(lspci | grep ' VGA ' | cut -d" " -f 1)
Wenn Sie mehr als eine GPU-Karte haben, versuchen Sie stattdessen diesen entsprechenden Befehl:
lspci | grep ' VGA ' | cut -d" " -f 1 | xargs -i lspci -v -s {}
Ausgabe von meinem System:
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
BEARBEITEN: Sie können das vermeiden, <access denied>
indem Sie mit startensudo
Zeigt also an, (prefetchable) [size=64M)
dass ich eine 64-MB-NVIDIA-Karte habe. Ich weiß jedoch nicht, es ist eher 256 MB. Warum? Siehe unten.
Lesen Sie einen äußerst umfassenden Artikel im Arch-Linux-Wiki, um zu erfahren, wie Sie die besten Informationen und die bestmögliche Leistung erzielen
https://wiki.archlinux.org/index.php/NVIDIA
Beginnen Sie für NVIDIA-Benutzer mit
nvidia-smi
(Dies funktioniert mit den installierten Nvidia-Treibern, jedoch nicht mit Systemen, auf denen der Open-Source-Nouveau-Treiber ausgeführt wird.)
Ausgabe
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 |
+-----------------------------------------------------------------------------+
Dies zeigt an, dass ich eine 256 MB GDDR3-Grafikkarte habe.
Derzeit weiß ich nicht, wie ich das für Intel- und AMD / ATI-GPUs bekomme.
nvidia-smi
(das sollte meiner Meinung nach ein wenig hervorgehoben werden)
nvidia-smi
zeigt mir nicht den vollständigen GPU-Namen
Führen Sie google-chrome
den Befehl aus und navigieren Sie zur URL about:gpu
. Wenn Chrome herausgefunden hat, wie OpenGL verwendet wird, erhalten Sie äußerst detaillierte Informationen zu Ihrer GPU.
chromium-browser
).
Da Sie einen Befehl wie cat
für CPUs angegeben haben, ist dies der Gegenwert für GPUs. Speziell für Nvidia-Karten. Es ist keine Software erforderlich, außer dass der Nvidia-Gerätetreiber geladen wird.
Der Pfad hier funktioniert für die Karten, die ich habe. Aber Ihre können davon abweichen, wie andere in den Kommentaren ausgeführt haben.
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
für mich)
0000:3b:00.0
oder 0000:d8:00.0
für mich, also sollten wir geben: cat /proc/driver/nvidia/gpus/0000:3b:00.0/information
. Das schöne Tesla V100-PCIE-16GB
Modell zeigt, dass das qsub
Joblimit wie gewünscht erfüllt ist.
Clinfo
sudo apt-get install clinfo
clinfo
ist das Analogon von glxinfo
aber für OpenCL.
nvidia-einstellungen
Mischt die Laufzeit mit statischen Informationen.
Weitere Details: Wie überprüfe ich, ob Ubuntu meine NVIDIA-Grafikkarte verwendet?
Ich glaube, die beste Option dafür ist Neofetch .
# Get neofetch
sudo add-apt-repository ppa:dawidd0811/neofetch
sudo apt update
sudo apt get neofetch
# Run neofetch
neofetch
Dies ergibt eine Ausgabe wie diese:
screenfetch
Programm macht dasselbe und benötigt keine PPA zur Installation.
Ich verwende zwei Methoden, um Informationen zu nVidia GPU und Intel iGPU automatisch anzuzeigen:
~/.bashrc
Zeigt bei jedem Öffnen des Terminals GPU-Informationen anIn diesem Beispiel wird Conky verwendet, um die aktuellen GPU-Statistiken (nVidia oder Intel) in Echtzeit anzuzeigen. Conky ist ein leichtgewichtiger Systemmonitor, der bei vielen Linux-Enthusiasten beliebt ist.
Die Anzeige ändert sich je nachdem, ob Sie nach prime-select intel
oder gebootet haben prime-select nvidia
.
Skylake GT2 HD 530 iGPU
mit der aktuellen Frequenz350
MHz und das Maximum ist 1050
MHzGeForce GTX970M
bei der aktuellen GPU-Frequenz und -Temperatur angezeigtHier ist das relevante Conky-Skript für Intel iGPU und 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
Terminal-BegrüßungsbildschirmIn diesem Beispiel werden ~/.bashrc
Informationen bei jedem Öffnen des Terminals oder bei jeder Eingabe . .bashrc
an der Shell-Eingabeaufforderung auf einem Begrüßungsbildschirm angezeigt .
Zusätzlich zu der neofetch
zuvor beantworteten Frage gibt es screenfetch
eine, die viel besser aussieht (IMO). In einer weiteren Antwort wird erwähnt, dass er nicht weiß, wie er eine iGPU-Liste erstellen kann.
Einzelheiten zur Einrichtung finden Sie unter: Begrüßungsbildschirm des Terminals mit Wetter, Kalender, Uhrzeit und Sysinfo?
Zusammenfassend nur für den unteren Bereich mit Ubuntu-Display mit GPU-Informationen (vorletzte Zeile) verwenden:
sudo apt install screenfetch
screenfetch
Sie sollten den screenfetch
Befehl am Ende Ihrer ~/.bashrc
Datei einfügen, damit er bei jedem Öffnen des Terminals angezeigt wird.
Nur um die Grundlagen zu finden, laut https://wiki.debian.org/NvidiaGraphicsDrivers#NVIDIA_Proprietary_Driver ,
lspci | grep VGA
Wenn Sie mehr Details benötigen, lesen Sie die Antwort von @knb auf dieselbe Frage.
Das ist wirklich nicht so komplex. Für Modell und Speicher gibt es hier einen 1-Liner, der für jede Grafikkarte funktioniert, auf der ich sie getestet habe, unabhängig vom Hersteller (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 = Dieses Bit greift nur auf das dritte Feld der 'lspci'-Ausgabe zu, die über' grep 'für VGA gefiltert wird, das dem Videochip entspricht.
RAM = Dieses ganze Bit setzt die Variable cardid
gleich dem ersten Ausgabefeld von lspci
Matching "VGA" und speist diese als Anforderung für eine -v
ausführliche Ausgabe von lspci
diesem spezifischen -s
Gerät ein, wobei die Ausgabe weiter grep
nach der Zeichenfolge "Prefetchable" gefiltert wird, wie diese enthält den Speicher auf der Karte selbst (beachten Sie das vorangegangene Leerzeichen, da wir in unserer Ausgabe nicht mit "nicht vorabrufbar" übereinstimmen möchten).
Für die Taktrate bei integrierten Intel-Grafiken (Getestet auf I3 und I5)
Führen Sie den Befehl aus. sudo find /sys -type f -name gt_cur* -print0 | xargs -0 cat
Dies taucht in den / sys-Baum ein, um die gt_cur_freq_mhz-Datei zu finden, die sich auf meinem I3 befindet, /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_cur_freq_mhz
und druckt den Inhalt aus. was in meinem Fall unter extrem geringer Last 350
wie bei 350 MHz ist, was der in /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_min_freq_mhz
und beim Laufen gefundenen Minimalfrequenz entspricht glxgears
und wie bei 1050 MHz glmark2
ergibt
1050
, was der in gefundenen Maximalfrequenz entspricht/sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_max_freq_mhz
Für Taktraten auf NVIDIA-Karten:
nvidia-smi -stats -d procClk
entspricht dem GPU-Takt
nvidia-smi -stats -d memClk
entspricht dem Speichertakt.
Hinweis: Ich kann das Obige nicht testen, da meine vertrauenswürdige GeForce 210 nicht unterstützt wird und dies nur auf Kepler- oder neueren GPUs funktioniert, wie in "nvidia-smi-stats --help" angegeben.
Ich habe derzeit keine Lösungen für die Taktrate von AMD-Karten und habe die Hardware nicht zum Testen zur Verfügung. Ich werde jedoch sagen, dass meines Wissens die aticonfig
in der akzeptierten Antwort erwähnte nicht mehr existiert und es scheint, dass nvclock
sie für nichts mehr verfügbar ist, da sie vertrauenswürdig ist.
Wenn Sie einfache Informationen wünschen , können Sie gpustat ausprobieren . Es ist sehr gut und einfach.
Der Autor gibt die folgenden Installationsanweisungen:
Installation von PyPI:
pip install gpustat
So installieren Sie die neueste Version (Hauptzweig) über pip:
pip install git+https://github.com/wookayin/gpustat.git@master
Wenn Sie nicht als Root - Berechtigung haben, versuchen Sie es auf Benutzernamespace zu installieren:
pip install --user
. Beachten Sie, dass ab Version 0.4gpustat.py
keine Null-Abhängigkeit mehr ausführbar ist. In seltenen Fällen benötigen Sie jedoch ein einzelnes ausführbares Skript (Legacy). Sie können auch Folgendes versuchen: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
In dieser Antwort wird davon ausgegangen, dass Sie einen Server mit NVIDIA-GPUs haben. Sie haben drei Möglichkeiten:
Um es kurz zu machen: nvidia-smi
Um einen detaillierten ein: nvidia-smi -q
. Sie erhalten mehrere Bildschirme mit detaillierten Informationen, wenn Sie mehr als 1 GPU haben.
Mach ein ls /proc/driver/nvidia/gpus/
. Der GPU-Bus-Speicherort wird als Ordner angezeigt. Führen Sie nun den folgenden Befehl für jeden GPU-Busstandort aus. Füllen Sie <gpu-id>
mit Bus-Standort:cat /proc/driver/nvidia/gpus/<gpu_id>/information
Für den Intel GMA950 (im Lieferumfang von EeePC enthalten) können Sie Folgendes ausführen:
setpci -s 00:02.0 f0.b
Dies gibt "00" für 200 MHz, "01" für 250 MHz oder "03" für 400 MHz zurück. Möglicherweise können Sie dasselbe Prinzip auf andere Intel-Karten anwenden.
Wenn Sie eine AMD Radeon-Karte besitzen, können Sie die folgenden Befehle ausführen
sudo update-pciids #optional command, requires internet
lspci -nn | grep -E 'VGA|Display'
Es sollte so etwas melden
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)
Verwenden Sie lspci
, lspci -v
um grundlegende Informationen zu erhalten, siehe hier .
In meinem Fall zum Beispiel, wenn ich einmal renne lspci
und Folgendes habe:
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
Um alle Informationen zum Grafikprozessor abzurufen, können Sie den folgenden Befehl verwenden, der von @greyfade angegeben wird.
> glxinfo
Wenn das Programm glxinfo
derzeit jedoch nicht installiert ist, können Sie es installieren, indem Sie Folgendes eingeben:
> sudo apt install mesa-utils
Sie müssen auch die aufgerufene Komponente aktivieren universe
. Sobald dies erledigt ist, glxinfo
werden alle Spezifikationen aufgelistet, die sich auf den Grafikprozessor in dieser Umgebung beziehen.
cat /proc/cpuinfo
machen? nach welchen infos suchst du