Como verificar qual GPU está ativa no Linux?


Respostas:


42

Acabei de passar um tempão tentando fazer meus gráficos discretos funcionarem no Ubuntu e responder a essas perguntas era constantemente um desafio, já que o método lspci mencionado anteriormente às vezes pode dizer que ambos são [VGA controller]

Eu acho que o seguinte comando deve lhe dar uma indicação do seu chip ativo:

$ glxinfo|egrep "OpenGL vendor|OpenGL renderer"
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Sandybridge Mobile

Para mim, isso está me dizendo que meus gráficos intel estão executando o programa. Se você estiver usando um chip nvidia e estiver usando o bumblebeepacote, poderá colocá-lo optirunna frente dessa linha e informar que está executando o chip NVidia (optirun está basicamente dizendo ao computador para usar o chip discreto para executar o comando a seguir, mas todo o resto ainda está usando o chip integrado)

$ optirun glxinfo|egrep "OpenGL vendor|OpenGL renderer"
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 555M/PCIe/SSE2

glxheads também fornece informações úteis sobre qual placa de vídeo está em uso (na maioria das vezes repete o glxinfo de uma forma mais compacta e fácil de ler), além de fornecer uma boa renderização de um triângulo rotativo.


16

Para verificar qual GPU está atualmente no comando (isso significa qual é um controlador VGA ativo), digite

lspci -vnnn | perl -lne 'print if /^\d+\:.+(\[\S+\:\S+\])/' | grep VGA

Qualquer controlador com [VGA controller]no final é sua GPU atualmente ativa. Os outros estão desligados. No exemplo a seguir, a placa Intel está ativa enquanto a nVidia não está em uso:

00:02.0 VGA compatible controller [0300]: Intel Corporation Core Processor
Integrated Graphics Controller [8086:0046] (rev 02) (prog-if 00 [VGA 
controller])
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF108 [GeForce
GT 540M] [10de:0df4] (rev ff) (prog-if ff)

7
Hum ... então o que significa se as duas cartas tiverem VGA controllerno final?
naught101

11
00: 02.0 Controlador compatível com VGA [0300]: Controladora gráfica integrada do processador Intel Core de 4ª geração da Intel Corporation [8086: 0416] (rev 06) (prog-if 00 [controlador VGA]) 01: 00.0 controlador compatível com VGA [0300]: NVIDIA Corporation GK106GLM [Quadro K2100M] [10de: 11fc] (rev a1) (prog-if 00 [controlador VGA]) o que isso significa?
Asaf Magen

11
Talvez você esteja usando o SLI?
Ubuntudroid 9/07

no meu caso, ambos têm o seguinte: 00: 02.0 controlador compatível com VGA [0300]: Intel Corporation Device [8086: 591b] (rev 04) (prog-if 00 [controlador VGA]) 01: 00.0 controlador compatível com VGA [0300 ]: NVIDIA Corporation GP106M [GeForce GTX 1060 Mobile] [10de: 1c20] (rev a1) (prog-if 00 [controlador VGA])
Aftab Naveed em

7

nvidia-settings GUI

No Ubuntu 15.10, após a instalação nvidia-352e a GPU parece funcionar:

nvidia-settings

mostra algo como:

insira a descrição da imagem aqui

Observe como mostra:

GPU 0 - (NVS 5400M)

onde NVS 5400Mestá o meu modelo de GPU?

Então, se eu acionar glxgears, o uso da GPU será> 90%.

Portanto, espero que, se você tivesse várias GPUs, pudesse ver quanto cada uma delas estava sendo usada de cada vez.


O que é nvidia-352 exatamente? Há vários drivers ou apenas um driver para uma GPU específica?
cosbor11

@ cosbor11 nvidia-352é a versão do pacote driver / Ubuntu n, cada versão suporta muitas GPUs listadas no site oficial: nvidia.com/Download/driverResults.aspx/90279/en-uames NVS 5400M é o modelo da GPU: en.wikipedia .org / wiki / List_of_Nvidia_graphics_processing_units
Ciro Santilli新疆改造中心法轮功六四事件


1

Qual sistema operacional você está usando? Se você usa o lspci na maioria das máquinas linux, obtém uma lista dos seus dispositivos pci, apenas grep para dispositivos gráficos e ele deve aparecer os dois. Depois disso, basta verificar a configuração em cada um deles, você deve ver detalhes de ativo / ativo / ativo ou algo dessa natureza.


11
Ubuntu 11.04. e lspci está mostrando todos os dois gpu's.
LanceBaynes

0

nvidia-smié muito útil, mas às vezes descobri que nem sempre inclui tudo. Parece que quando os processos falham, eles nem sempre são listados.

sudo lsof /dev/nvidia*sempre trabalhou para mim. Também funcionará sem sudo, mas mostrará apenas os processos de sua propriedade. Se você estiver trabalhando em uma máquina multiusuário ou estiver usando o docker, provavelmente obterá melhores resultados sudo.

Se houver uma discrepância entre os 2 comandos, convém considerar killos processos extras encontrados lsof.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.