¿Cómo comprobar qué tarjeta gráfica controla mi pantalla?

¿Cómo comprobar qué tarjeta gráfica controla mi pantalla?

El sistema está configurado con una de esas ofertas híbridas Intel/ATI (sin mux). Después de jugar un poco con la configuración del kernel y los controladores, creo que conseguí que ambas tarjetas funcionaran (agregando radeon.dpm=1 en la configuración del kernel y usando solo los controladores de código abierto).

Sin embargo, no puedo entender qué tarjeta está usando el sistema. Según tengo entendido, con el kernel más nuevo (3.12) y la administración dinámica de energía apagará/encenderá la tarjeta cuando sea necesario, por lo que en teoría debería usar el hd4000 integrado la mayor parte del tiempo, sin embargo, no puedo encontrar una manera fácil. para comprobar cuál está en uso.

lspci | grep VGAsolo enumera todas las tarjetas, no especifica cuál está en uso actualmente.

Se agradece mucho algo de dirección en la dirección correcta.

Sistema

Debian 7 estable, 3.12 amd64 Kernel 7670M AMD + Intel HD4000

Respuesta1

xrandr

El uso xrandrle mostrará qué tarjetas están disponibles.

$ 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

En este sistema tengo 1 tarjeta gráfica, una Intel, que tiene 2 puertos (salidas). Puedes ver los resultados xrandrasí:

$ 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)

Las 2 salidas son VGA1 (puerto externo VGA) y LVDS1 (monitor LCD en computadora portátil).

lshw

Por último, puede utilizar lshwpara obtener más información sobre la información real de las tarjetas 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)

Cómo determinar qué GPU controla qué monitores

Para realizar esta tarea, deberá tomar la lista de proveedores y anotar su número en el xrandr --listproviderscomando. Este número es el número del dispositivo. A menudo es el mismo número el que se asigna junto con la pantalla en la salida de xrandr -q.

Por lo tanto, se puede construir libremente qué "dispositivo" GPU está controlando qué pantalla. En mi ejemplo, el "Proveedor 0" controla la "Pantalla 0".

NOTA:El término "Pantalla" no corresponde necesariamente a una única visualización. En mi escenario, mi GPU puede controlar 2 salidas, LVDS1 y VGA1. Pero este enfoque le permite determinar con un grado bastante alto de confianza qué pantalla está siendo impulsada por qué GPU.

Las asociaciones anteriores se controlan a través de la configuración del sistema, por lo que existen posibilidades de que puedan inducirle a error. Por ejemplo, la asociación anterior se genera a partir de una configuración que suele tener este aspecto:

Section "Screen"
    Identifier  "Screen0"
    Device      "Device0"
EndSection
Section "Screen"
    Identifier  "Screen1"
    Device      "Device1"
EndSection

Por lo tanto, existe la posibilidad de que el sistema haya sido configurado para Screen0ser impulsado de otra manera que no sea Device0.

Referencias

Respuesta2

El glxinfo, que está disponible en mesa-utilsse puede utilizar para mostrar qué adaptador de vídeo se utiliza para los gráficos OpenGL.

Por ejemplo:

➜  ~  glxinfo | grep "OpenGL renderer string"
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Mobile

Respuesta3

Esta pregunta todavía aparece cerca de la parte superior de los resultados de Google, así que la responderé aunque sea muy antigua. La respuesta de slm me enseñó muchas herramientas útiles, pero no me dio la respuesta. El cambio de Ubuntu a wayland podría ser parte del problema. Así es como lo descubrí:

    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

Este listado muestra la tarjeta y la pantalla, es decir, "card0 eDP-1" es mi computadora portátil y la gpu que controla la pantalla LCD incorporada de la computadora portátil. "card1-HDMI-A-1" es la gpu nvida que controla la pantalla externa en el puerto HDMI. Todavía no es perfecto, pero lo suficientemente cerca como para decirme lo que quiero.

información relacionada