我最近在配备 Nvidia Quadro K1100M 显卡的 Dell M3800 上安装了 Ubuntu 14.04 的新副本。
后来,我还通过 HDMI(HDMI 转 DVI 连接器)连接了外接显示器。然后,我开始看到笔记本电脑屏幕上的屏幕性能迟缓。迟缓的意思是,我的按键或操作似乎总是滞后。有趣的是,这种情况似乎只发生在我的笔记本电脑屏幕上,而我的外接显示器工作正常。
我已确保安装并使用 Nvidia 的专有驱动程序 331.38。
所以我检查了系统设置 > 显示。它正确显示了如下所示的 2 个屏幕。
但当我进入 Nvidia X Server 设置时,它只显示一个具有一个大屏幕分辨率的屏幕,如下所示。
我认为这导致我的笔记本电脑性能缓慢,因为我认为外接显示器和我的笔记本电脑屏幕有不同的屏幕刷新率。
我正在转储xorg.conf
并xandr
输出以下内容,
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig: version 331.38 (buildmeister@swio-display-x64-rhel04-15) Wed Jan 8 19:53:14 PST 2014
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia" 0 0
Inactive "intel"
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "keyboard"
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 "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 28.0 - 33.0
VertRefresh 43.0 - 72.0
Option "DPMS"
EndSection
Section "Device"
Identifier "intel"
Driver "modesetting"
BusID "PCI:0@0:2:0"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:2@0:0:0"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
Monitor "Monitor0"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Monitor "Monitor0"
Option "AllowEmptyInitialConfiguration" "on"
Option "ConstrainCursor" "off"
SubSection "Display"
Modes "nvidia-auto-select"
EndSubSection
EndSection
xrandr
输出,
cdtank@cdtank-Dell-Precision-M3800:~/work$ xrandr
Screen 0: minimum 8 x 8, current 3840 x 1080, maximum 16384 x 16384
eDP-1-0 connected 1920x1080+0+0 344mm x 193mm
1920x1080 60.0*+ 59.9
1680x1050 60.0 59.9
1600x1024 60.2
1400x1050 60.0
1280x1024 60.0
1440x900 59.9
1280x960 60.0
1360x768 59.8 60.0
1152x864 60.0
1024x768 60.0 60.0
960x720 60.0
928x696 60.1
896x672 60.0
960x600 60.0
960x540 60.0
800x600 60.0 60.3 56.2
840x525 60.0 59.9
800x512 60.2
700x525 60.0
640x512 60.0
720x450 59.9
640x480 60.0 59.9
680x384 59.8 60.0
576x432 60.1
512x384 60.0
400x300 60.3 56.3
320x240 60.1
VGA-1-0 disconnected
HDMI-1-0 connected 1920x1080+1920+0 598mm x 336mm
1920x1080 60.0*+
1600x1200 60.0
1680x1050 59.9
1400x1050 59.9
1600x900 60.0
1280x1024 75.0 60.0
1440x900 59.9
1280x960 60.0
1280x800 59.9
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
DisplayPort-1-0 disconnected
HDMI-1-1 disconnected
更新 删除 xorg.conf 并重新启动后。以下是其内容。
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "intel"
EndSection
Section "Device"
Identifier "intel"
Driver "modesetting"
BusID "PCI:0@0:2:0"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:2@0:0:0"
Option "ConstrainCursor" "off"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "on"
EndSection
答案1
我遇到了基本上相同的问题,结果发现就我的情况而言(可能也是您的情况),这最终是笔记本电脑共享显卡的硬件问题,其中英特尔(节能)卡连接到 HDMI 端口,而 nvidia(性能)卡没有。nvidia 驱动程序将无法在双显示器设置中工作,因为它默认为 nvidia(性能)卡。我不明白这背后的设计决策(可能是成本?)。
我发现,对于我的情况,解决方案是要么在 nvidia 驱动程序设置中将默认模式切换为省电模式,要么切换到 nouveau 驱动程序(无论如何,它似乎默认为省电模式)。然后,我可以在通过 HDMI 端口连接时使用第二台显示器。
尝试切换到严格使用省电模式,看看双显示器设置是否通过系统设置起作用。如果起作用,那么您就知道您遇到了这个奇怪的硬件问题。制造商如何在其他操作系统中自己解决这个问题,以及为什么它在基于 Linux 的驱动程序中没有修复,这超出了我的知识范围。
但并非所有希望都破灭了。这里也许还有其他(更好的?)答案 [Ubuntu 16.04 是否支持混合显卡(大黄蜂)]。bumblebee 的当前版本 (3.2.1) 相当老旧 (2013),我个人不推荐安装它,因为我没有安装过,但似乎有不少用户在使用时没有遇到问题。不过,它有望复兴 (请查看 Bumblebee Project githubs 上的开发分支)。
无论你是否选择采用大黄蜂路线,你都应该查看其 wiki 上的多显示器信息 [https://github.com/Bumblebee-Project/Bumblebee/wiki/Multi-monitor-setup],内容很丰富。
答案2
我有这台笔记本电脑,我将其与通过雷电(显示端口)插槽连接的外部 4k 屏幕一起使用。 两个屏幕在 4k 60hz 下都可以正常工作,而且我没有 xorg.conf。 我注意到使用 HDMI 端口可能会使速度变慢一点,而显示端口要好得多。
我正在使用 16.04,它运行良好,但我没有在这台笔记本电脑上运行 14.04,但我也稳定地使用了 15. 版本。
我认为问题是显卡驱动程序不正确。我使用的是 nvidia-364https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa并使用那里的更新。
顺便说一句,这台笔记本电脑和 owc 雷电底座运行得非常好。
答案3
从https://devtalk.nvidia.com/default/topic/807239/nvidia-server-setting-utility-doesn-t-see-laptop-screen/:请确保没有任何/etc/X11/xorg.conf*
文件。运行以下命令:
sudo rm -v /etc/X11/xorg.conf*
然后再次重新启动,我就可以登录,并且 nvidia 驱动程序完美运行。
答案4
你在 nvidia-settings 中看不到内部显示的原因 https://devtalk.nvidia.com/default/topic/807239/nvidia-server-setting-utility-doesn-t-see-laptop-screen/
您可以在执行以下操作后通过 ubuntu 的系统设置 --> 显示来设置内部显示器的设置(我必须这样做,因为它得到了分辨率和其他一些错误,弄乱了内部显示器的布局):
sudo apt-get 安装 compizconfig-settings-manager compiz-plugins
在 CCSM 中,转到“常规选项”-->“显示设置”并执行以下操作:取消选中“检测输出”在输出数组中,设置每个屏幕的分辨率。我有 1920x1080+0+0 作为唯一的条目,其中我另外添加了 1920x1080+1920+0
之后我进入 ubuntu 的系统设置-->显示并在那里设置了内部显示器的设置。