Precisa identificar a unidade de processamento gráfico (GPU) em um computador Linux? Veja como você pode identificar a placa gráfica na linha de comando e no GNOME.
últimas postagens
O primeiro passo
Você provavelmente já esteve lá. Você foi convocado para fornecer suporte a um parente não técnico ou colega de trabalho e algo lhe diz que isso não será indolor. Ainda assim, você contribui! Você determina rapidamente que o problema provavelmente é um problema de driver de vídeo. Ei, isso pode não ser tão ruim afinal! Mas, então, sua breve centelha de esperança se esvai quando você pergunta: “Que tipo de placa gráfica você tem?”
A expressão cervo-nos-faróis que você recebe em resposta fala por si. Para apoiar algo, você precisa saber o que é. Então, como você identifica a placa gráfica em um computador Linux?
Vamos supor o pior cenário e dizer que os drivers da placa de vídeo nunca foram instalados, então você não pode nem olhar para eles para ter uma ideia. Não importa! Você pode resolver este enigma a partir da linha de comando ou através do Interface gráfica do usuário (GUI).
lspci e o banco de dados PCI ID
O Peripheral Component Interconnect O padrão (PCI) é um protocolo comum que você pode usar para conversar com periféricos internos, como placas de vídeo. O Repositório PCI ID mantém um banco de dados de todos os IDs conhecidos para dispositivos PCI. Isso significa que se você souber alguma informação sobre o dispositivo, poderá pesquisá-la.
Você pode usar o comando lspci para listar o Dispositivos PCI instalados em um computador Linux, bem como algumas informações sobre eles.
Não seria ótimo se pudéssemos amarrar o banco de dados PCI e o comando lspci juntos? Bem, na verdade, isso é exatamente o que acontece quando você executa o comando lspci. Ele verifica uma cópia local do banco de dados PCI para identificar os dispositivos PCI que detecta. Antes de começar, é aconselhável atualizar a cópia local do banco de dados PCI.
Digite o comando update-pciids para fazer exatamente isso:
sudo update-pciids
A última versão do banco de dados é recuperada para nós e agora podemos usar o comando lspci. Haverá muita saída, então vamos canalizá-la para menos. A opção -v (verbose) diz ao lscpi para nos fornecer o máximo de informações possível. Usaremos sudo para garantir que as informações sejam as mais detalhadas possíveis.
Digitamos nosso comando da seguinte maneira:
sudo lspci -v | less
Os resultados aparecem em menos. Se você pressionar a barra (/), ativará a função de pesquisa menos.
Digite “VGA” em maiúsculas e pressione Enter.
menos procura pela string, “VGA”, e mostra as primeiras correspondências que encontra. A partir desse ponto, você pode rolar ou avançar a página para ver quantas placas gráficas o lspci encontrou.
Para este artigo, conduzimos nossa pesquisa em uma variedade de distribuições Linux rodando em VirtualBox máquinas virtuais. As máquinas virtuais, é claro, têm placas de vídeo virtuais.
Para que você possa ver um exemplo de resultados do mundo real, aqui está a saída do computador host (físico):
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
Deu-nos imediatamente muitas informações boas!
A placa é uma NVIDIA Corporation GP108 [GeForce GT 1030], e, após alguns segundos com um mecanismo de pesquisa, encontramos o Página de tecnologia NVIDIA para esse dispositivo. O “[VGA controller]”Texto no final da primeira linha indica que esta é a placa gráfica“ operacional ”. Essa é uma informação útil quando mais de uma placa está instalada em um computador.
O Comando lshw
Você também pode usar o comando lshw para listar o hardware instalado em um computador Linux. Ele também relata uma variedade de tipos – não apenas hardware PCI.
Para informá-lo sobre as placas gráficas que encontrar, usaremos a opção -C (classe) e passaremos o modificador “display”. A opção -numeric força lshw a fornecer os IDs numéricos dos dispositivos, bem como seus nomes.
Digite o seguinte:
sudo lshw -numeric -C display
Aqui está o que aquele comando encontrou no computador físico:
*-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
De forma encorajadora, ambos encontraram o mesmo cartão!
O [10DE:1D01] os identificadores representam o fabricante (10DE) e o modelo (1D01). Para encontrar a marca e o modelo imediatamente, você pode digitar “placa gráfica 10de: 1d01” em um mecanismo de busca.
O Comando glxinfo
O comando glxinfo é outro método que você pode usar. Dá-lhe informações do Extensão OpenGL para o sistema X Windows. Você pode então pesquisar algumas dessas informações para descobrir que tipo de placa gráfica está instalada em uma máquina.
O comando glxinfo já está presente no Manjaro e Fedora, mas você deve instalá-lo no Ubuntu. Para fazer isso, digite o seguinte comando:
sudo apt-get install mesa-utils
Para canalizar a saída de glxinfo por meio de less e usar a opção -B (imprimir IDs), digite o seguinte:
glxinfo -B | less
A placa gráfica é descrita na linha “Dispositivo”.
Esta é a saída do computador físico:
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
Quando você digita “NV138” em um mecanismo de busca, a placa de vídeo NVIDIA é identificada imediatamente.
Usando a GUI para identificar a placa gráfica
Se o computador for um servidor somente CLI, você terá que usar uma das técnicas que abordamos acima. Se ele tiver uma GUI (funcional), no entanto, é provável que haja uma maneira gráfica de identificar a placa de vídeo. Na verdade, essa opção provavelmente está em algum lugar nas ferramentas de configuração da área de trabalho do Linux.
Na área de trabalho do GNOME, abra a caixa de diálogo “Configurações” e clique em “Detalhes” na barra lateral. No painel “Sobre”, procure uma entrada “Gráficos”. Isso informa que tipo de placa de vídeo está no computador ou, mais especificamente, a placa de vídeo que está em uso. Sua máquina pode ter mais de uma GPU.
Na guia “Sobre” das configurações do GNOME de um host físico, obtemos o mesmo ID de cartão “NV138” que vimos anteriormente. Novamente, podemos inserir essas informações em um mecanismo de pesquisa para encontrar o tipo de cartão.
Placas Gráficas em Laptops
Muitos laptops têm duas placas gráficas: uma do fabricante do unidade central de processamento (CPU) e um de um provedor de GPU convencional.
Vamos digitar o mesmo comando lspci anterior, mas desta vez, vamos executá-lo em um laptop:
sudo lspci -v | less
Como esperado, obtemos uma descrição das placas gráficas na máquina:
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
Este laptop tem um GPU Intel Core e uma NVIDIA GeForce 610M. No entanto, ambos os cartões têm o “[VGA controller]”String, que geralmente indica qual GPU está em uso.
Eles não podem estar em uso, então tente fazer com que a placa do provedor de GPU principal funcione primeiro. Esse é o que o fabricante do laptop considera o padrão e inclui nas especificações de hardware da máquina.
Uma das técnicas que abordamos aqui com certeza funcionará para você! Depois de saber qual tipo de placa gráfica um computador ou laptop possui, você pode selecionar o driver gráfico apropriado.