Behöver du identifiera Graphics Processing Unit (GPU) i en Linux-dator? Så här kan du identifiera grafikkortet från kommandoraden och i GNOME.
Innehållsförteckning
Det första steget
Du har förmodligen varit där. Du är utarbetad för att ge stöd till en släkting som inte är tekniker eller arbetskollega, och något säger dig att det här inte kommer att gå smärtfritt. Ändå ställer du upp! Du avgör snabbt att problemet sannolikt är ett problem med bildskärmsdrivrutinen. Hej, det här kanske inte är så illa trots allt! Men sedan dämpas ditt kortlivade hopp av hopp när du frågar: ”Vad har du för grafikkort?”
Deer-in-headlights-uttrycket du får som svar talar sitt tydliga språk. För att stödja något måste du veta vad det är. Så hur identifierar du grafikkortet i en Linux-dator?
Låt oss anta det värsta scenariot och säga att drivrutinerna för grafikkortet aldrig installerades, så du kan inte ens titta på dem för att få en aning. Det spelar ingen roll! Du kan lösa denna gåta antingen från kommandoraden eller genom grafiskt användargränssnitt (GUI).
lspci och PCI ID-databasen
De Peripheral Component Interconnect (PCI)-standard är ett vanligt protokoll som du kan använda för att prata med intern kringutrustning, som grafikkort. De PCI ID-förråd upprätthåller en databas med alla kända ID:n för PCI-enheter. Det betyder att om du känner till information om enheten kan du slå upp den.
Du kan använda kommandot lspci för att lista PCI-enheter installerade på en Linux-datorsamt lite information om dem.
Skulle det inte vara bra om vi kunde knyta ihop PCI-databasen och lspci-kommandot? Tja, faktiskt, det är precis vad som händer när du kör kommandot lspci. Den kontrollerar en lokal kopia av PCI-databasen för att identifiera PCI-enheterna som den upptäcker. Innan vi börjar är det klokt att uppdatera den lokala kopian av PCI-databasen.
Skriv kommandot update-pciids att göra just det:
sudo update-pciids
Den senaste databasversionen hämtas åt oss och vi kan nu använda kommandot lspci. Det kommer att bli mycket produktion, så vi lägger till mindre. Alternativet -v (verbose) säger åt lscpi att ge oss så mycket information som möjligt. Vi kommer att använda sudo för att säkerställa att informationen är så detaljerad som möjligt.
Vi skriver vårt kommando enligt följande:
sudo lspci -v | less
Resultaten visas i mindre. Om du trycker på snedstrecket framåt (/) aktiverar du sökfunktionen för mindre.
Skriv ”VGA” med versaler och tryck på Enter.
färre sökningar efter strängen ”VGA” och den visar de första matchningarna den hittar. Från den punkten kan du bläddra eller bläddra framåt för att se hur många grafikkort lspci hittade.
För den här artikeln genomförde vi vår forskning om en mängd olika Linux-distributioner som körs i VirtualBox virtuella maskiner. Virtuella maskiner har naturligtvis virtuella grafikkort.
Så du kan se ett exempel på verkliga resultat, här är utdata från värddatorn (fysisk):
26:00.0 VGA compatible controller: NVIDIA Corporation GP108 [GeForce GT 1030] (rev a1) (prog-if 00 [VGA controller]) Subsystem: Gigabyte Technology Co., Ltd GP108 [GeForce GT 1030] Flags: bus master, fast devsel, latency 0, IRQ 97 Memory at f6000000 (32-bit, non-prefetchable) [size=16M] Memory at e0000000 (64-bit, prefetchable) [size=256M] Memory at f0000000 (64-bit, prefetchable) [size=32M] I/O ports at e000 [size=128] Expansion ROM at 000c0000 [disabled] [size=128K] Capabilities: [60] Power Management version 3 Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+ Capabilities: [78] Express Legacy Endpoint, MSI 00 Capabilities: [100] Virtual Channel Capabilities: [250] Latency Tolerance Reporting Capabilities: [128] Power Budgeting > Capabilities: [420] Advanced Error Reporting Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 > Capabilities: [900] Secondary PCI Express > Kernel driver in use: nouveau Kernel modules: nouveau
Det gav oss mycket bra information direkt!
Kortet är en NVIDIA Corporation GP108 [GeForce GT 1030]och efter några sekunder med en sökmotor hittade vi NVIDIA-tekniksidan för den enheten. den ”[VGA controller]” text i slutet av den första raden indikerar att detta är det “operativa” grafikkortet. Det är användbar information när mer än ett kort är installerat på en dator.
Kommandot lshw
Du kan också använda kommandot lshw för att lista hårdvaran som är installerad på en Linux-dator. Den rapporterar också en mängd olika typer – inte bara PCI-hårdvara.
För att berätta för den att rapportera om grafikkorten den hittar, använder vi alternativet -C (klass) och skickar ”display”-modifieraren. Alternativet -numeric tvingar lshw att tillhandahålla enheternas numeriska ID, såväl som deras namn.
Skriv följande:
sudo lshw -numeric -C display
Här är vad kommandot hittade på den fysiska datorn:
*-display description: VGA compatible controller product: GP108 [GeForce GT 1030] [10DE:1D01] vendor: NVIDIA Corporation [10DE] physical id: 0 bus info: [email protected]:26:00.0 version: a1 width: 64 bits clock: 33MHz capabilities: pm msi pciexpress vga_controller bus_master cap_list rom configuration: driver=nouveau latency=0 resources: irq:97 memory:f6000000-f6ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:e000(size=128) memory:c0000-dffff
Uppmuntrande nog hittade båda samma kort!
De [10DE:1D01] identifierare representerar tillverkaren (10DE) och modellen (1D01). För att hitta märket och modellen omedelbart kan du skriva ”grafikkort 10de:1d01” i en sökmotor.
Kommandot glxinfo
Glxinfo-kommandot är ännu en metod du kan använda. Den ger dig information från OpenGL-tillägg för X Windows-systemet. Du kan sedan söka i en del av den informationen för att ta reda på vilken typ av grafikkort som är installerat på en maskin.
Glxinfo-kommandot finns redan på Manjaro och Fedora, men du måste installera det på Ubuntu. För att göra det, skriv följande kommando:
sudo apt-get install mesa-utils
För att leda utdata från glxinfo genom less, och använda alternativet -B (utskrifts-ID), skriv följande:
glxinfo -B | less
Grafikkortet beskrivs i raden ”Device”.
Detta är utdata från den fysiska datorn:
name of display: :1 display: :1 screen: 0 direct rendering: Yes Extended renderer info (GLX_MESA_query_renderer): Vendor: nouveau (0x10de) Device: NV138 (0x1d01) Version: 19.3.2 Accelerated: yes Video memory: 1987MB Unified memory: no Preferred profile: core (0x1) Max core profile version: 4.3 Max compat profile version: 4.3 Max GLES1 profile version: 1.1 Max GLES[23] profile version: 3.2 OpenGL vendor string: nouveau OpenGL renderer string: NV138 OpenGL core profile version string: 4.3 (Core Profile) Mesa 19.3.2 OpenGL core profile shading language version string: 4.30 OpenGL core profile context flags: (none) OpenGL core profile profile mask: core profile OpenGL version string: 4.3 (Compatibility Profile) Mesa 19.3.2 OpenGL shading language version string: 4.30 OpenGL context flags: (none) OpenGL profile mask: compatibility profile OpenGL ES profile version string: OpenGL ES 3.2 Mesa 19.3.2 OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
När du skriver ”NV138” i en sökmotor identifieras NVIDIA-grafikkortet omedelbart.
Använda GUI för att identifiera grafikkortet
Om datorn är en CLI-server måste du använda någon av teknikerna som vi täckte ovan. Om den har ett (fungerande) GUI, men det finns troligen ett grafiskt sätt att identifiera grafikkortet. Faktum är att det alternativet förmodligen finns någonstans i dina Linux-skrivbordsinställningar.
På ett GNOME-skrivbord öppnar du dialogrutan ”Inställningar” och klickar sedan på ”Detaljer” i sidofältet. Leta efter en ”Grafik”-post i panelen ”Om”. Detta talar om för dig vilken typ av grafikkort som finns i datorn, eller, mer specifikt, grafikkortet som används för närvarande. Din maskin kan ha mer än en GPU.
I GNOME-inställningarna ”Om”-fliken från en fysisk värd får vi samma ”NV138”-kort-ID som vi såg tidigare. Återigen, vi kan koppla in den informationen i en sökmotor för att hitta korttypen.
Grafikkort på bärbara datorer
Många bärbara datorer har två grafikkort: ett från tillverkaren av centrala behandlingsenheten (CPU) och en från en vanlig GPU-leverantör.
Låt oss skriva samma lspci-kommando från tidigare, men den här gången kör vi det på en bärbar dator:
sudo lspci -v | less
Som väntat får vi en beskrivning av grafikkorten i maskinen:
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09) (prog-if 00 [VGA controller]) Subsystem: ASUSTeK Computer Inc. 3rd Gen Core processor Graphics Controller Flags: bus master, fast devsel, latency 0, IRQ 33 Memory at f7400000 (64-bit, non-prefetchable) [size=4M] Memory at d0000000 (64-bit, prefetchable) [size=256M] I/O ports at f000 [size=64] [virtual] Expansion ROM at 000c0000 [disabled] [size=128K] Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit- Capabilities: [d0] Power Management version 2 Capabilities: [a4] PCI Advanced Features Kernel driver in use: i915 Kernel modules: i915 01:00.0 VGA compatible controller: NVIDIA Corporation GF119M [GeForce 610M] (rev a1) (prog-if 00 [VGA controller]) Subsystem: ASUSTeK Computer Inc. GF119M [GeForce 610M] Flags: bus master, fast devsel, latency 0, IRQ 34 Memory at f6000000 (32-bit, non-prefetchable) [size=16M] Memory at e0000000 (64-bit, prefetchable) [size=128M] Memory at e8000000 (64-bit, prefetchable) [size=32M] I/O ports at e000 [size=128] Expansion ROM at f7000000 [disabled] [size=512K] Capabilities: [60] Power Management version 3 Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+ Capabilities: [78] Express Endpoint, MSI 00 Capabilities: [b4] Vendor Specific Information: Len=14 > Capabilities: [100] Virtual Channel Capabilities: [128] Power Budgeting > Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 > Kernel driver in use: nouveau Kernel modules: nouveau
Den här bärbara datorn har både en Intel Core GPU och en NVIDIA GeForce 610M. Men båda korten har ”[VGA controller]” sträng, som vanligtvis indikerar vilken GPU som används.
De kan inte båda användas, så försök att få kortet från den vanliga GPU-leverantören att fungera först. Det är den som bärbara datortillverkaren anser vara standard och inkluderar i maskinvaruspecifikationerna.
En av teknikerna vi har täckt här kommer säkerligen att fungera för dig! När du vet vilken typ av grafikkort en dator eller bärbar dator har kan du välja lämplig grafikdrivrutin.