如何檢查哪個顯示卡正在驅動我的顯示器?

如何檢查哪個顯示卡正在驅動我的顯示器?

本系統採用 Intel/ATI 混合產品之一(無復用器)進行設定。經過一番擺弄內核設定和驅動程式後,我認為這兩張卡都可以工作(在核心設定中添加 radeon.dpm=1 並僅使用開源驅動程式)。

但是我無法弄清楚系統正在使用哪張卡片。根據我對較新核心(3.12)的理解,amd 動態電源管理將在需要時關閉/打開卡電源,因此理論上它應該在大多數時間使用集成 hd4000,但是我找不到簡單的方法檢查哪一個正在使用。

lspci | grep VGA僅列出所有卡,不指定目前正在使用哪一張卡。

非常感謝一些朝著正確方向前進的人。

系統

Debian 7 穩定版,3.12 amd64 核心 7670M AMD + Intel HD4000

答案1

蘭德爾

使用xrandr將顯示哪些卡片可用。

$ 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

在這個系統上,我有 1 個顯示卡,一個 Intel,有 2 個連接埠(輸出)。您可以像這樣查看輸出xrandr

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

2 個輸出是 VGA1(VGA 外部連接埠)和 LVDS1(筆記型電腦上的 LCD 顯示器)。

長沙

最後,您可以用來lshw尋找更多有關實際顯示卡資訊的資訊:

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

如何確定哪個 GPU 正在驅動哪個顯示器

要完成此任務,您需要取得提供者清單並記下xrandr --listproviders命令中的編號。此編號是設備編號。它通常與 的輸出中與螢幕一起分配的數字相同xrandr -q

因此,我們可以鬆散地建構哪個 GPU「裝置」正在驅動哪個螢幕。在我的範例中,「Provider 0」正在驅動「Screen 0」。

筆記:術語“螢幕”不一定對應於單一顯示器。在我的場景中,我的 GPU 可以驅動 2 個輸出:LVDS1 和 VGA1。但這種方法確實可以讓您非常有信心地確定哪個顯示器由哪個 GPU 驅動。

上述關聯是透過系統設定控制的,因此有可能會誤導您。例如,上述關聯是由通常如下所示的設定所驅動的:

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

因此,系統可能是由Screen0以外的其他東西驅動的Device0

參考

答案2

中的glxinfomesa-utils可用於顯示用於 OpenGL 圖形的視訊適配器。

例如:

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

答案3

這個問題仍然出現在谷歌結果的頂部附近,所以我會回答它,即使它已經很老了。 slm的回覆教會了我很多有用的工具,但沒有給我答案。 Ubuntu 轉向 Wayland 可能是問題的一部分。我是這樣想出來的:

    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

此清單顯示了卡片和顯示器,即「card0 eDP-1」是我的筆記型電腦 AMD GPU 控制筆記型電腦的內建 LCD 螢幕。 「card1-HDMI-A-1」是控制 HDMI 連接埠上的外部顯示器的 nvida gpu。仍然不完美,但足夠接近告訴我我想要什麼。

相關內容