내 디스플레이를 구동하는 그래픽 카드를 확인하는 방법은 무엇입니까?

내 디스플레이를 구동하는 그래픽 카드를 확인하는 방법은 무엇입니까?

시스템은 하이브리드 Intel/ATI 제품(muxless) 중 하나로 설정됩니다. 커널 설정과 드라이버를 약간 조작한 후에 두 카드가 모두 작동하게 된 것 같습니다(커널 설정에 radeon.dpm=1을 추가하고 오픈 소스 드라이버만 사용).

그러나 시스템이 어떤 카드를 사용하고 있는지 알 수 없습니다. 최신 커널(3.12) 및 동적 전원 관리에 대한 내 이해에 따르면 필요할 때 카드의 전원을 끄거나 켤 수 있으므로 이론적으로는 대부분의 시간 동안 통합 hd4000을 사용해야 하지만 쉬운 방법을 찾을 수 없습니다. 어느 것이 사용 중인지 확인합니다.

lspci | grep VGA모든 카드만 나열되며 현재 사용 중인 카드는 지정되지 않습니다.

올바른 방향으로의 조향이 매우 감사했습니다.

체계

Debian 7 안정, 3.12 amd64 커널 7670M AMD + Intel HD4000

답변1

xrandr

를 사용하면 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

이 시스템에는 2개의 포트(출력)가 있는 Intel 그래픽 카드 1개가 있습니다. 다음과 같이 출력을 볼 수 있습니다 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는 LVDS1과 VGA1의 2개 출력을 구동할 수 있습니다. 그러나 이 접근 방식을 사용하면 어떤 디스플레이가 어떤 GPU에 의해 구동되는지에 대해 상당히 높은 확신을 가지고 결정할 수 있습니다.

위의 연결은 시스템 설정을 통해 제어되므로 오해를 불러일으킬 가능성이 있습니다. 예를 들어 위의 연결은 종종 다음과 같은 설정에서 구동됩니다.

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

Screen0따라서 시스템이 가 아닌 다른 것으로 구동되도록 설정되었을 가능성이 있습니다 Device0.

참고자료

답변2

glxinfo에서 사용 가능한 를 사용 mesa-utils하여 OpenGL 그래픽에 사용되는 비디오 어댑터를 표시할 수 있습니다.

예를 들어:

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

답변3

이 질문은 여전히 ​​Google 검색결과 상단에 표시되므로 매우 오래되었더라도 답변해 드리겠습니다. 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"은 노트북의 내장 LCD 화면을 제어하는 ​​제 노트북과 GPU입니다. "card1-HDMI-A-1"은 HDMI 포트의 외부 디스플레이를 제어하는 ​​nvida GPU입니다. 아직 완벽하지는 않지만 내가 원하는 것을 말해 줄 만큼 충분히 가깝습니다.

관련 정보