Định cấu hình Xorg để hoạt động từ GPU tích hợp


11

Tôi đang sử dụng Ubuntu 14.04LTS, với đồ họa tích hợp CPU Intel +, với GPU GTX650. Tôi đã hỏi câu hỏi này trên SO nhưng họ nói nó không chính thống.

Tôi muốn sử dụng GPU của mình để gỡ lỗi mã CUDA và tôi chỉ cần thay đổi hiển thị thành tích hợp. Đây là lỗi tôi gặp phải khi tôi cố gắng gỡ lỗi hiện tại:

"All cuda devices are used for display and cannot be used while debugging"

Tôi đã đi vào BIOS và chuyển màn hình chính sang iGPU (tích hợp, HD4600). Không có gì xuất hiện từ các cổng GPU nữa (về mặt hiển thị) và tôi cắm màn hình của mình vào bo mạch chủ. Chỉ một trong những màn hình hoạt động. Thông thường tôi có chúng như:

|[Monitor 1, VGA]| |[Monitor 2, DVI]|

Trong cấu hình đó, với iGPU, không có gì được hiển thị trên Màn hình 1 (nó màu đen, nhưng máy tính biết nó ở đó - đèn xanh bật và tất cả các cửa sổ của tôi đều mở trên đó). Cách duy nhất để làm cho nó hoạt động là hoán đổi Màn hình 2 sang VGA và Màn hình 1 sang DVI.

Nếu tôi nhập lspci | grep VGAvào Terminal, tôi nhận được điều này:

00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller (rev 06)
01:00.0 VGA compatible controller: NVIDIA Corporation GK107 [GeForce GTX 650] (rev a1)

Chạy xrandrcho tôi:

Screen 0: minimum 8 x 8, current 3360 x 1050, maximum 16384 x 16384
DVI-D-0 disconnected primary (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
VGA1 connected 1680x1050+0+0 474mm x 296mm
   1680x1050      60.0*+
   1600x1000      60.0 +
   1280x1024      75.0     72.0     60.0  
   1440x900       75.0     59.9  
   1152x864       75.0  
   1024x768       75.1     70.1     60.0  
   800x600        72.2     75.0     60.3  
   640x480        75.0     72.8     66.7     60.0  
   720x400        70.1  
DP1 disconnected
HDMI1 disconnected
HDMI2 connected 1680x1050+1680+0 474mm x 296mm
   1680x1050      60.0*+
   1600x1000      60.0 +
   1280x1024      75.0     72.0     60.0  
   1440x900       75.0     59.9  
   1152x864       75.0  
   1024x768       75.1     70.1     60.0  
   800x600        72.2     75.0     60.3  
   640x480        75.0     72.8     66.7     60.0  
   720x400        70.1  
HDMI3 disconnected
VIRTUAL1 disconnected

Đó không phải là kết nối HDMI, tôi không biết tại sao nó lại nghĩ như vậy. Với GPU, nó biết đó là DVI. Dù sao...

Đây là xorg.conf(nếu tôi thay đổi, nó chỉ ghi đè lên nó):

Section "ServerLayout"
    Identifier "layout"
    Screen 0 "nvidia"
    Inactive "intel"
EndSection

Section "Device"
    Identifier "intel"
    Driver "intel"
    BusID "PCI:0@0:2:0"
    Option "AccelMethod" "SNA"
EndSection

Section "Screen"
    Identifier "intel"
    Device "intel"
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    BusID "PCI:1@0:0:0"
    Option "ConstrainCursor" "off"
EndSection

Section "Screen"
    Identifier "nvidia"
    Device "nvidia"
    Option "AllowEmptyInitialConfiguration" "on"
    Option "IgnoreDisplayDevices" "CRT"
EndSection

Đây là 10-monitors.conftập tin của tôi trong /usr/share/X11/xorg.conf.d/:

  GNU nano 2.2.6                                      File: /usr/share/X11/xorg.conf.d/10-monitors.conf                                                                                   

Section "Monitor"
    Identifier     "VGA1"
EndSection

Section "Monitor"
    Identifier     "HDMI2"
EndSection

Section "Device"
   Identifier      "intel0"
   Driver          "intel"
   BusID           "PCI:0@0:2:0"
EndSection

Section "Device"
   Identifier      "intel1"
   Driver          "intel"
   BusID           "PCI:0@0:2:0"
EndSection

Section "Screen"
   Identifier     "Screen0"
   Device         "intel0"
   Monitor        "VGA1"
   DefaultDepth   24
   SubSection     "Display"
      Depth       24
      Modes       "1680x1050" "1920x1080"
   EndSubSection
EndSection

Section "Screen"
   Identifier     "Screen1"
   Device         "intel1"
   Monitor        "HDMI2"
   DefaultDepth   24
   SubSection     "Display"
      Depth       24
      Modes       "1680x1050" "1920x1080"
   EndSubSection
EndSection

Điều này vẫn không cho phép mã CUDA của tôi được gỡ lỗi. Nếu tôi chạy lsof / dev / nvidia * tôi nhận được:

COMMAND  PID     USER   FD   TYPE  DEVICE SIZE/OFF  NODE NAME
compiz  1659 cinnamon  mem    CHR 195,255          11805 /dev/nvidiactl
compiz  1659 cinnamon  mem    CHR   195,0          11806 /dev/nvidia0
compiz  1659 cinnamon   11u   CHR 195,255      0t0 11805 /dev/nvidiactl
compiz  1659 cinnamon   12u   CHR   195,0      0t0 11806 /dev/nvidia0
compiz  1659 cinnamon   13u   CHR   195,0      0t0 11806 /dev/nvidia0
compiz  1659 cinnamon   14u   CHR   195,0      0t0 11806 /dev/nvidia0

Vì vậy, tôi đoán Compiz (máy chủ X?) Đang sử dụng nó. Làm thế nào để tôi ngăn chặn nó sử dụng nó?


1
Tôi giả sử bạn đang sử dụng trình điều khiển nvidia độc quyền? Có lẽ thử các phiên bản khác nhau có thể giúp đỡ? (Hãy thử 384.387?) Ngoài ra, CUDA bạn đang phát triển với cái gì? Tôi đã không thử vào ngày 14.04, nhưng tôi đang sử dụng CUDA8.0.61 vào ngày 17.04 với nvidia-384 970M. (Không có iGPU ở đây)
Robobenklein

1
Cũng tốt để kiểm tra sẽ là trình điều khiển xserver intel. Tôi sẽ thử với số lượng màn hình tối thiểu được cắm vào và đảm bảo rằng các điều khiển nvidia không được kích hoạt với Xserver. (Xem trong tiện ích GUI Nvidia trong khi X đang chạy và xem những gì hiển thị ở đó.) Cũng đáng kiểm tra là nvidia-debugdump -l -v -zđể xem hệ thống của bạn nhận ra thẻ của bạn như thế nào.
Robobenklein

Câu trả lời:


0

Tôi đã thành công với thiết lập màn hình kép, với một kết nối với GPU ATI chuyên dụng của tôi và cái còn lại được kết nối với i7P600K iGPU.

Để làm như vậy tôi đã chạy

xrandr --setprovideroutputsource 1 0

Nó được sử dụng để hoạt động hoàn hảo nhưng nó vẫn được coi là thử nghiệm và với một số nâng cấp kernel kể từ đó YMMV.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.