带有 Nvidia Optimus 的 Ubuntu 18.04.5 / 20.04 在高刷新率(144/240/300hz)下无法工作

带有 Nvidia Optimus 的 Ubuntu 18.04.5 / 20.04 在高刷新率(144/240/300hz)下无法工作

我在 GE66 Raider 笔记本上运行 Ubuntu 18.04 LTS 时遇到问题。这台机器在 300Hz 1080p 显示屏上运行 i7-10850H 和 RTX 2070,并支持 Optimus。

全新安装后,在 gnome 设置显示中,我可以准确看到刷新率 (300.18) 的 300 hz 选项。然而,这在 Windows 上看起来/感觉不像 300hz,这一点已由 ufo 在线测试证实。

我尝试了每一个xrandr命令,重新安装了 nvidia 驱动程序(当前运行 455),在 Nvidia X 设置中设置了刷新率,但没有结果。

当前prime-select模式是 Intel,因为我将主要使用 Ubuntu 进行代码开发,所以我想利用这台机器支持的 Optimus 技术来延长电池寿命。这意味着我想在 Intel UHD 630 集成显卡上运行 GUI,同时让 GPU 执行要求高的任务。

    Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
    eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
       1920x1080     60.04 + 300.18*   60.01    59.97    59.96    59.93  
       1680x1050     84.94    74.89    69.88    59.95    59.88  
       1600x1024     60.17  
       1400x1050     85.00    74.76    70.00    59.98  
       1600x900      59.99    59.94    59.95    59.82  
       1280x1024     85.02    75.02    60.02  
       1440x900      59.89  
       1400x900      59.96    59.88  
       1280x960      85.00    60.00  
       1440x810      60.00    59.97  
       1368x768      59.88    59.85  
       1360x768      59.80    59.96  
       1280x800      59.99    59.97    59.81    59.91  
       1152x864     100.00    85.06    85.00    75.00    75.00    70.00    60.00  
       1280x720      60.00    59.99    59.86    59.74  
       1024x768      85.00    75.05    60.04    85.00    75.03    70.07    60.00  
       1024x768i     86.96  
       960x720       85.00    75.00    60.00  
       928x696       75.00    60.05  
       896x672       75.05    60.01  
       1024x576      59.95    59.96    59.90    59.82  
       960x600       59.93    60.00  
       832x624       74.55  
       960x540       59.96    59.99    59.63    59.82  
       800x600       85.00    75.00    70.00    65.00    60.00    85.14    72.19    75.00    60.32    56.25  
       840x525       85.02    74.96    69.88    60.01    59.88  
       864x486       59.92    59.57  
       800x512       60.17  
       700x525       85.08    74.76    70.06    59.98  
       800x450       59.95    59.82  
       640x512       85.02    75.02    60.02  
       720x450       59.89  
       700x450       59.96    59.88  
       640x480       85.09    60.00    85.01    72.81    75.00    59.94  
       720x405       59.51    58.99  
       720x400       85.04  
       684x384       59.88    59.85  
       680x384       59.80    59.96  
       640x400       59.88    59.98    85.08  
       576x432      100.11    85.15    85.09    75.00    75.00    70.00    60.06  
       640x360       59.86    59.83    59.84    59.32  
       640x350       85.08  
       512x384       85.00    75.03    70.07    60.00  
       512x384i      87.06  
       512x288       60.00    59.92  
       416x312       74.66  
       480x270       59.63    59.82  
       400x300       85.27    72.19    75.12    60.32    56.34  
       432x243       59.92    59.57  
       320x240       85.18    72.81    75.00    60.05  
       360x202       59.51    59.13  
       360x200       85.04  
       320x200       85.27  
       320x180       59.84    59.32  
       320x175       85.27  
    eDP-1-2 disconnected (normal left inverted right x axis y axis)
    DP-1-1 disconnected (normal left inverted right x axis y axis)
    DP-1-2 disconnected (normal left inverted right x axis y axis)
    HDMI-1-1 disconnected (normal left inverted right x axis y axis)

这是我的 Xorg.conf 文件:

 nvidia-xconfig:  version 455.38


Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "Files"
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"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Unknown"
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

我尝试重新安装 ubuntu,更新 nvidia 驱动程序,并设置 prime select nvidia 为使用 gpu 驱动显示器。在 nvidia-settings 中无法更改显示分辨率和刷新率。这是预期的吗?

更新 1:Ubuntu 20.04 也会发生这种情况。

更新 2:Ubuntu 20.04 已经prime-select on-demand可用,但这并不能解决问题。

答案1

我在 18.04 系统上使用 xorg.conf,它位于 /etc/x11,您可以使用“nvidia-xconfig”生成一个,这是我的,供您参考,它应该是什么样的

“服务器布局”部分

Identifier     "Layout0"
Screen      0  "Screen0" 0 0
InputDevice    "Keyboard0" "CoreKeyboard"
InputDevice    "Mouse0" "CorePointer"
Option         "Xinerama" "0"

结束部分

“文件”部分 EndSection

“输入设备”部分

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

结束部分

“输入设备”部分

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

结束部分

“监控”部分

Identifier     "Monitor0"
VendorName     "Unknown"
ModelName      "Microstep MSI G241"
HorizSync       180.0 - 180.0
VertRefresh     48.0 - 144.0
Option         "DPMS"

结束部分

“设备”部分

Identifier     "Device0"
Driver         "nvidia"
VendorName     "NVIDIA Corporation"
BoardName      "GeForce GTX 1070"
Option         "Coolbits" "13"

结束部分

“屏幕”部分

Identifier     "Screen0"
Device         "Device0"
Monitor        "Monitor0"
DefaultDepth    24
Option         "TripleBuffer" "On"
Option         "Stereo" "0"
Option         "nvidiaXineramaInfoOrder" "DFP-6"
Option         "metamodes" "DP-4: 1920x1080_144 +0+0 {AllowGSYNCCompatible=On}
Option         "SLI" "Off"
Option         "MultiGPU" "Off"
Option         "BaseMosaic" "off"
SubSection     "Display"
    Depth       24
EndSubSection

结束部分

答案2

对于所有被这个问题困扰的人,经过一周的痛苦和汗水,我可以公平地宣布这​​个问题是一个错误。Nvidia Optimus 是每个 Linux 发行版中高刷新率显示器的一大痛处。

如果你真的想要 144+ hz 的流畅体验,那就省去很多时间的痛苦,从 BIOS 中禁用 OPTIMUS。在 MSI 最新的笔记本电脑中,你可以输入

Ctrl_right+Shift_right+Alt_left + F2

在高级选项卡中将 VGA 模式从 MSI 混合显卡切换为独立显卡。

在您的 ubuntu 发行版中 sudo prime-select nvidia ,只需使用 dGPU 运行显示器即可。然后告别您超长的电池寿命体验。

请注意,这解决了主显示器的高刷新率问题,但当连接速率低于主显示器的外接显示器时,GNOME 会将自身重置为 60Hz。这个错误是已知的,并且将会被解决(理论上,使用较新版本的 GNOME 3.38 或 Ubuntu 20.10 可以解决)。

我希望这能够帮助其他遇到同样问题的人。

相关内容