Wie überprüfe ich, welche Grafikkarte mein Display ansteuert?

Wie überprüfe ich, welche Grafikkarte mein Display ansteuert?

Das System ist mit einem dieser hybriden Intel/ATI-Angebote (ohne Mux) eingerichtet. Nach ein bisschen Herumprobieren mit Kerneleinstellungen und Treibern habe ich glaube ich beide Karten zum Laufen gebracht (radeon.dpm=1 in den Kerneleinstellungen hinzugefügt und nur die Open-Source-Treiber verwendet).

Ich kann jedoch nicht herausfinden, welche Karte das System verwendet. Meines Wissens nach schaltet das dynamische Energiemanagement von AMD mit dem neueren Kernel (3.12) die Karte bei Bedarf aus bzw. ein. Theoretisch sollte also die meiste Zeit die integrierte HD4000 verwendet werden. Ich kann jedoch keine einfache Möglichkeit finden, zu überprüfen, welche Karte verwendet wird.

lspci | grep VGAlistet lediglich alle Karten auf, gibt aber nicht an, welche aktuell verwendet wird.

Ein wenig Lenkung in die richtige Richtung wäre sehr willkommen.

System

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

Antwort1

xrandr

Durch die Verwendung xrandrwird Ihnen angezeigt, welche Karten verfügbar sind.

$ 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

Auf diesem System habe ich eine Grafikkarte, eine Intel, die über zwei Ports (Ausgänge) verfügt. Die Ausgänge können Sie wie xrandrfolgt sehen:

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

Die 2 Ausgänge sind VGA1 (externer VGA-Anschluss) und LVDS1 (LCD-Monitor am Laptop).

Abonnieren

Zuletzt können Sie lshwweitere Informationen zu den eigentlichen Grafikkarteninformationen erhalten:

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

So ermitteln Sie, welche GPU welche Monitore antreibt

Um diese Aufgabe zu erledigen, müssen Sie die Liste der Anbieter nehmen und ihre Nummer aus dem xrandr --listprovidersBefehl notieren. Diese Nummer ist die Gerätenummer. Es ist oft dieselbe Nummer, die zusammen mit dem Bildschirm in der Ausgabe von zugewiesen wird xrandr -q.

Man kann also grob konstruieren, welches GPU-„Gerät“ welchen Bildschirm steuert. In meinem Beispiel steuert „Provider 0“ „Bildschirm 0“.

NOTIZ:Der Begriff „Bildschirm“ entspricht nicht unbedingt einem einzelnen Display. In meinem Szenario kann meine GPU zwei Ausgänge ansteuern, LVDS1 und VGA1. Mit diesem Ansatz können Sie jedoch mit ziemlich hoher Sicherheit feststellen, welches Display von welcher GPU angesteuert wird.

Die obigen Verknüpfungen werden durch die Systemkonfiguration gesteuert, daher besteht die Möglichkeit, dass Sie dadurch in die Irre geführt werden. Die obige Verknüpfung wird beispielsweise durch eine Konfiguration gesteuert, die häufig wie folgt aussieht:

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

Es besteht also die Möglichkeit, dass das System mit Screen0einem anderen Antrieb als eingerichtet wurde Device0.

Verweise

Antwort2

Mit dem glxinfoin verfügbaren mesa-utilskann angezeigt werden, welcher Videoadapter für OpenGL-Grafiken verwendet wird.

Zum Beispiel:

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

Antwort3

Diese Frage erscheint immer noch ganz oben in den Google-Ergebnissen, daher werde ich sie beantworten, auch wenn sie schon sehr alt ist. Die Antwort von slm hat mir viele nützliche Tools gezeigt, aber keine Antwort geliefert. Ubuntus Umstellung auf Wayland könnte Teil des Problems sein. So habe ich es herausgefunden:

    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

Diese Auflistung zeigt die Karte und das Display, d. h. „card0 eDP-1“ ist die AMD-GPU meines Laptops, die den eingebauten LCD-Bildschirm des Laptops steuert. „card1-HDMI-A-1“ ist die NVIDIA-GPU, die das externe Display am HDMI-Anschluss steuert. Immer noch nicht perfekt, aber nah genug dran, um mir zu sagen, was ich will.

verwandte Informationen