如何在Ubuntu 20.04上设置双显卡双显示?

Yos*_*tsu 5 nvidia xorg multiple-monitors drivers

我正在设置 PC,配备一对 GeForce GTX 1070(均为 ASUS TURBO 1070)卡和一台通过 DP(GPU-0) 和 HDMI(GPU-1) 连接的飞利浦 246E FHD 显示器。

电脑配置:

  • DELL Precision T7500 工作站(2009 或 2010 年制造)
  • 中央处理器:X5690*2
  • 内存:16GB * 12 (=192GB)
  • GPU:ASUS TURBO GTX 1070 * 2(不使用SLI电缆)
  • Ubuntu 显示管理器:gdm3

当我安装 Ubuntu 20.04 时,我检查了

  • 正常安装
  • 安装 Ubuntu 时下载更新
  • 正在安装用于图形和 WiFi 硬件的第三方软件...

图片:安装 Ubuntu 检查设置

我安装了 Ubuntu 20.04,然后重新启动,第二个显示器(连接到 GPU-1)无法工作。

图片 : 第二台飞利浦显示器无法工作

所以我如下设置“NVIDIA X SERVER SETTINGS”。

图片:第一台显示器的 X 服务器设置

图片:第二台显示器的 X 服务器设置

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 440.82

Section "ServerLayout"

# Removed Option "Xinerama" "0"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen1" 1920 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "Module"
    Load           "dbe"
    Load           "extmod"
    Load           "type1"
    Load           "freetype"
    Load           "glx"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"

    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Philips PHL 246E7"
    HorizSync       30.0 - 83.0
    VertRefresh     56.0 - 76.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "Philips PHL 246E7"
    HorizSync       30.0 - 83.0
    VertRefresh     56.0 - 76.0
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 1070"
    BusID          "PCI:3:0:0"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 1070"
    BusID          "PCI:4:0:0"
EndSection

Section "Screen"

# Removed Option "metamodes" "GPU-bb9972e4-0457-d2b7-c62f-9aa988ef66e4.GPU-0.DP-3: nvidia-auto-select +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}, GPU-850dc788-8ca1-f53b-5edd-54c338e6fed5.GPU-1.HDMI-1: nvidia-auto-select +1920+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"
# Removed Option "BaseMosaic" "on"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-6"
    Option         "metamodes" "nvidia-auto-select +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-2"
    Option         "metamodes" "nvidia-auto-select +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On, AllowGSYNC=Off}"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Run Code Online (Sandbox Code Playgroud)

重新启动后,我仍然在一台显示器上看到 GNOME。然而,另一台显示器是黑屏,只有默认的 X 光标(右侧的发光只是显示器上的反射):

图片:第二台显示器上的 X 光标

这是我的 nvidia-smi 信息。

Wed Aug 12 17:24:37 2020       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 440.100      Driver Version: 440.100      CUDA Version: 10.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 1070    Off  | 00000000:03:00.0  On |                  N/A |
| 24%   56C    P0    39W / 151W |    462MiB /  8118MiB |      1%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GeForce GTX 1070    Off  | 00000000:04:00.0  On |                  N/A |
| 24%   37C    P8     7W / 151W |     54MiB /  8119MiB |     11%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0      1103      G   /usr/lib/xorg/Xorg                            35MiB |
|    0      1707      G   /usr/lib/xorg/Xorg                           206MiB |
|    0      1917      G   /usr/bin/gnome-shell                         121MiB |
|    0      2830      G   /usr/bin/nvidia-settings                       3MiB |
|    0      3201      G   /usr/lib/firefox/firefox                       2MiB |
|    0      3278      G   /usr/lib/firefox/firefox                       2MiB |
|    0      3460      G   /usr/lib/firefox/firefox                       2MiB |
|    0      5499      G   ...094687058528,131072 --disable-features=    36MiB |
|    0      5731      G   /usr/lib/firefox/firefox                       2MiB |
|    0      5774      G   /usr/lib/firefox/firefox                       2MiB |
|    0      5830      G   /usr/lib/firefox/firefox                       2MiB |
|    0      7114      G   /usr/lib/firefox/firefox                       2MiB |
|    1      1103      G   /usr/lib/xorg/Xorg                            14MiB |
|    1      1707      G   /usr/lib/xorg/Xorg                            15MiB |
|    1      2830      G   /usr/bin/nvidia-settings                       0MiB |
+-----------------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)

我检查了这些页面以供参考:

小智 0

我相信, https://manpages.ubuntu.com/manpages/impish/man1/Xdmx.1.html描述了解决方案和问题。在没有设置 mukti-head 代理的情况下,x 服务器上的头数限制为 4 个(链接是该代理的手册)。