O sistema está configurado com uma daquelas ofertas híbridas Intel/ATI (muxless). Depois de mexer um pouco nas configurações e drivers do kernel, acho que ambas as placas funcionaram (adicionando radeon.dpm = 1 nas configurações do kernel e usando apenas os drivers de código aberto).
No entanto, não consigo descobrir qual placa o sistema está usando. Pelo que entendi com o kernel mais recente (3.12), o gerenciamento dinâmico de energia e o gerenciamento dinâmico de energia desligarão/ligarão a placa quando necessário, então, em teoria, ele deveria usar o hd4000 integrado na maior parte do tempo, mas não consigo encontrar uma maneira fácil para verificar qual está em uso.
lspci | grep VGA
lista apenas todos os cartões, não especifica qual deles está em uso no momento.
Algumas orientações na direção certa são muito apreciadas.
Sistema
Debian 7 estável, 3.12 amd64 Kernel 7670M AMD + Intel HD4000
Responder1
xrandr
O uso xrandr
mostrará quais cartões estão disponíveis.
$ xrandr --listproviders
Providers: number : 1
Provider 0: id: 0x49 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 2 outputs: 8 associated providers: 0 name:Intel
Neste sistema tenho 1 placa gráfica, uma Intel, que possui 2 portas (saídas). Você pode ver as saídas xrandr
assim:
$ xrandr -q
Screen 0: minimum 320 x 200, current 3360 x 1080, maximum 8192 x 8192
LVDS1 connected primary 1440x900+0+0 (normal left inverted right x axis y axis) 303mm x 190mm
1440x900 60.0*+ 50.0
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 connected 1920x1080+1440+0 (normal left inverted right x axis y axis) 521mm x 293mm
1920x1080 60.0*+
1680x1050 60.0
1280x1024 75.0 60.0
1440x900 59.9
1280x960 60.0
1152x864 75.0
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 75.0 72.8 66.7 60.0
720x400 70.1
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
HDMI3 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
DP3 disconnected (normal left inverted right x axis y axis)
As 2 saídas são VGA1 (porta externa VGA) e LVDS1 (monitor LCD no laptop).
lshw
Por último, você pode usar lshw
para obter mais informações sobre as informações reais das placas gráficas:
$ sudo lshw -numeric -c video
*-display
description: VGA compatible controller
product: Core Processor Integrated Graphics Controller [8086:46]
vendor: Intel Corporation [8086]
physical id: 2
bus info: pci@0000:00:02.0
version: 02
width: 64 bits
clock: 33MHz
capabilities: msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:41 memory:f2000000-f23fffff memory:d0000000-dfffffff ioport:1800(size=8)
Como determinar qual GPU está conduzindo quais monitores
Para realizar esta tarefa você precisará pegar a lista de provedores e anotar seu número no xrandr --listproviders
comando. Este número é o número dos dispositivos. Muitas vezes é o mesmo número atribuído junto com a tela na saída de xrandr -q
.
Assim, pode-se construir vagamente qual "dispositivo" GPU está controlando qual tela. No meu exemplo, "Provedor 0" está direcionando a "Tela 0".
OBSERVAÇÃO:O termo “Tela” não corresponde necessariamente a um único display. No meu cenário, minha GPU pode gerar 2 saídas, LVDS1 e VGA1. Mas esta abordagem permite que você determine com um alto grau de confiança qual monitor está sendo controlado por qual GPU.
As associações acima são controladas através da configuração do sistema, portanto há possibilidades de enganá-lo. Por exemplo, a associação acima é conduzida a partir de uma configuração que geralmente se parece com esta:
Section "Screen"
Identifier "Screen0"
Device "Device0"
EndSection
Section "Screen"
Identifier "Screen1"
Device "Device1"
EndSection
Portanto, existe a possibilidade de o sistema ter sido configurado para Screen0
ser acionado por algo diferente Device0
.
Referências
Responder2
O glxinfo
, que está disponível em mesa-utils
pode ser usado para exibir qual adaptador de vídeo é usado para gráficos OpenGL.
Por exemplo:
➜ ~ glxinfo | grep "OpenGL renderer string"
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Mobile
Responder3
Esta pergunta ainda aparece no topo dos resultados do Google, então vou respondê-la mesmo que seja muito antiga. A resposta do slm me ensinou muitas ferramentas úteis, mas não me deu a resposta. A mudança do Ubuntu para wayland pode ser parte do problema. Veja como eu descobri:
root@Legion5:~# ls -lah /sys/class/drm
total 0
drwxr-xr-x 2 root root 0 Nov 9 11:07 .
drwxr-xr-x 87 root root 0 Nov 9 11:07 ..
lrwxrwxrwx 1 root root 0 Nov 9 11:07 card0 -> ../../devices/pci0000:00/0000:00:08.1/0000:06:00.0/drm/card0
lrwxrwxrwx 1 root root 0 Nov 9 11:07 card0-eDP-1 -> ../../devices/pci0000:00/0000:00:08.1/0000:06:00.0/drm/card0/card0-eDP-1
lrwxrwxrwx 1 root root 0 Nov 9 11:07 card1 -> ../../devices/pci0000:00/0000:00:01.1/0000:01:00.0/drm/card1
lrwxrwxrwx 1 root root 0 Nov 9 11:07 card1-DP-1 -> ../../devices/pci0000:00/0000:00:01.1/0000:01:00.0/drm/card1/card1-DP-1
lrwxrwxrwx 1 root root 0 Nov 9 11:07 card1-DP-2 -> ../../devices/pci0000:00/0000:00:01.1/0000:01:00.0/drm/card1/card1-DP-2
lrwxrwxrwx 1 root root 0 Nov 9 11:07 card1-eDP-2 -> ../../devices/pci0000:00/0000:00:01.1/0000:01:00.0/drm/card1/card1-eDP-2
lrwxrwxrwx 1 root root 0 Nov 9 11:07 card1-HDMI-A-1 -> ../../devices/pci0000:00/0000:00:01.1/0000:01:00.0/drm/card1/card1-HDMI-A-1
lrwxrwxrwx 1 root root 0 Nov 9 11:07 renderD128 -> ../../devices/pci0000:00/0000:00:08.1/0000:06:00.0/drm/renderD128
lrwxrwxrwx 1 root root 0 Nov 9 11:07 renderD129 -> ../../devices/pci0000:00/0000:00:01.1/0000:01:00.0/drm/renderD129
-r--r--r-- 1 root root 4.0K Nov 9 11:07 version
esta listagem mostra a placa e a tela, ou seja, "card0 eDP-1" é meu laptop e GPU controlando a tela LCD integrada do laptop. "card1-HDMI-A-1" é o gpu nvida que controla o monitor externo na porta HDMI. Ainda não é perfeito, mas perto o suficiente para me dizer o que quero.