Nvidia X服务器设置仅显示1个屏幕(笔记本电脑+已连接外部显示器)


25

我最近在装有Nvidia Quadro K1100M显卡的Dell M3800上安装了Ubuntu 14.04的新副本。

后来我还通过HDMI(HDMI到DVI接口)连接了外部显示器。然后,我开始在笔记本电脑的屏幕上看到缓慢的屏幕性能。呆滞是指我的击键或动作似乎总是滞后。有趣的是,这似乎只发生在我的笔记本电脑屏幕上,外接显示器工作正常。

我已确保安装并使用Nvidia的专有驱动程序331.38。

因此,我检查了系统设置>显示。并正确显示2个屏幕,如下所示。

在此处输入图片说明

但是后来我去了Nvidia X Server设置,它只显示一个屏幕,具有一个大屏幕分辨率,如下所示。

在此处输入图片说明

我认为这导致笔记本电脑的性能下降,因为我假设外接显示器和笔记本电脑的屏幕均具有不同的屏幕刷新率。

我在下面转储xorg.confxandr输出

# 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

您在nvidia设置中看到选择选项,可以更改吗?
Mark Kirby 2014年

也尝试打开立体声,看起来您的2个屏幕显示为1,可以看到nvidia设置3840的分辨率不同吗?每个屏幕2个屏幕宽1920
Mark Kirby 2014年

@markkirby回复:选择选项,只有一个选项,即X Screen 0。回复:立体声,似乎有很多它选项,如HDMI3d,色彩交错,交织水平等
Chantz

您可以在布局区域中单击还是单击鼠标右键?
Mark Kirby

Answers:


3

我遇到了基本上相同的问题,在我的情况下(也许也是您的情况),最终导致笔记本电脑中共享图形卡(与Intel(省电)卡相连)的硬件问题HDMI端口和nvidia(性能)卡不是。由于nvidia驱动程序默认为nvidia(性能)卡,因此它将无法在双显示器设置中使用。我没有背后的设计决定(也许要花钱?)。

我发现我的解决方案是在nvidia驱动程序设置中将默认模式切换为省电,或者切换到nouveau驱动程序(无论如何似乎都默认为省电模式)。通过HDMI端口连接时,我可以使用第二台监视器。

尝试切换为严格使用省电模式,然后查看双显示器设置是否可以通过系统设置工作。如果是这样,则说明您遇到了这个古怪的硬件问题。制造商如何在其他操作系统中自行解决此问题,以及为什么在基于Linux的驱动程序中未解决此问题超出了我的知识范围。

但是,并非所有希望都消失了。这里可能还有其他(更好的?)答案[ Ubuntu 16.04是否支持混合图形卡(大黄蜂) ]。Bumblebee的当前版本(3.2.1)较旧(2013),我个人不能仅仅因为没有安装它而建议不要安装它,但似乎有很多用户对此没有问题。但是,它有望复兴(请查看Bumblebee Project githubs上的develop分支)。

无论您是否选择采用大黄蜂路线,都应在其Wiki上查看多显示器信息[ https://github.com/Bumblebee-Project/Bumblebee/wiki/Multi-monitor-setup ],它的内容非常丰富。


1
+1-这对我有用-详细说明;进入nvidia x服务器设置> PRIME配置文件>英特尔(省电模式)。然后登录和注销。第二个监视器正在顺利更新。
alex.p,2016年

伙计们,您真的救了我的这一天,我为此而发疯。设置省电模式的解决方案有效。干杯!
Mr.Coffee's

1

我有这台笔记本电脑,我将其与通过Thunderbolt(显示端口)插座连接的外部4k屏幕一起使用。它可以在4k 60hz的两个屏幕上正常工作,而且我没有xorg.conf。我注意到,使用HDMI端口可以减慢显示端口的速度,效果更好。

我使用的是16.04,效果很好,但我尚未在这台笔记本电脑上运行14.04,但我也稳定地使用了15个发行版。

我认为问题在于图形驱动程序不合适。我正在从https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa使用nvidia-364,并从那里使用更新。

顺带一提,这台笔记本电脑和owc雷电扩展坞工作得很好。


不要走手动安装nvidia驱动程序的路线,那只对专用的nvidia卡有效,而对optimus卡无效。
Amias

您的HDMI到DVI转换器的速度可能会变慢
Amias

不知道这是否与这种情况有关,但是在使用Apple计算机时,Ubuntu和NVidia驱动程序没有任何问题。我已经能够将Thunderbolt显示器连接到我的iMac甚至第三台显示器,而没有任何问题。但是,我目前正在使用Ubuntu 14.04.5在东芝笔记本电脑上工作,并且在尝试获得适合显示器的分辨率时遇到了困难。应该是1920x1080,但我能得到的最好的是1366x768。
2016年

thunderbolt是pci express的热插拔,我相信在thunderbolt之前,Linux内核中已经有处理该代码的代码,因为某些高可用性服务器具有类似的功能。
Amias

0

在我每次使用的所有Linux发行版中,每当将HDMI电缆插入另一台显示器时,我都会得到分辨率的更改以及您要报告的内容,因为设置是为外部显示器配置分辨率的。但是,这也会影响您的笔记本电脑,因为要设置另一台显示器的设置,还必须首先在笔记本电脑上进行设置,以便HDMI电缆可以将笔记本电脑屏幕上显示的内容广播到另一台显示器。因此,我认为没有办法“修复”此问题。

例如,我可能连接了分辨率为1366x768的显示器,但可能有一台分辨率为1024x768的笔记本电脑。这些设置将调整分辨率设置,并可能使笔记本电脑的屏幕边缘不显示Ubuntu菜单栏。但是,已经对其进行了调整,以便外部监视器可以正确看到它。


-1

检查是否使用了正确的驱动程序:

$ lspci -nnk | grep "VGA\|'Kern'\|3D\|Display" -A2

如果不是将错误的驱动程序列入黑名单:

$ sudo echo nouveau >> /etc/modprobe.d/blacklist.conf

重新启动并再次查看正在使用哪个驱动程序。

如果使用了正确的驱动程序,但仍然存在问题,则需要配置xorg.conf文件。是一个很好的维基,如何配置两个显示的xorg.conf


您无法使用nouveau驱动程序运行nvidia设置
Amias

-1

您可以尝试设置screen0 =“ buildtin”和screen1 =“ monitor1”,它们位于xorg.conf中,并且您可以从终端使用gedit,这在此处的这两部分中:

      section monitor
      section screen

这样可以很好地工作。



-1

不幸的是,这是TwinView双显示体系结构的工作方式……这是Nvidia认为正确的方式,可以为X会话提供直接的方式以同时支持多个显示器。

您可以尝试Xinerama,但是很遗憾,您将无法激活合成。 https://wiki.archlinux.org/index.php/multihead


不,不是的,此设置工作正常,只需要重新配置
Amias

到目前为止,考虑到我的设置类似于由nvidia管理HDMI,由Intel管理显示端口的用户设置,这是** NVIDIA通过您管理视频显示的方式**显示端口,由Intel图形管理,我也没有问题。
RomuloPBenedetti

您可以获取更多信息,xrandr --listproviders以了解哪个提供商(GPU)控制着什么。但是可以肯定的是,也许这种混合设置没有像我一样硬接线。
RomuloPBenedetti

-1

这可能是因为两个监视器都在60 hrz以上的范围内工作。尝试使用xrandr手动将它们都设置为50或更好的40,看看是否有帮助。大多数笔记本电脑图形卡不支持120+ hrz频率,这对于两台都具有60+的显示器是需要的。


更新频率未加在一起。您可以在较低的频率上运行,这是一个好主意,但是对于最新的驱动程序,您不需要这样做。
Amias

我在某处读过它,它帮助我解决了同样的问题。但这可能只是幸运的一击。
Ufos

-1

您在nvidia设置中看不到内部显示屏的原因 https://devtalk.nvidia.com/default/topic/807239/nvidia-server-setting-utility-doesn-t-see-laptop-screen/

您可以在执行以下操作后通过ubuntu的系统设置->显示来设置内部显示器的设置(我必须这样做,因为它获得了分辨率以及其他错误,从而弄乱了内部显示器的布局):

sudo apt-get install compizconfig-settings-manager compiz-plugins

如何在扩展坞上使用多个显示器?

在CCSM中,转到“常规选项”->“显示设置”,然后执行以下操作:取消选中“检测输出”。在“输出”数组中,设置每个屏幕的分辨率。我将1920x1080 + 0 + 0作为唯一添加了1920x1080 + 1920 + 0的条目

compiz设置管理器显示设置的屏幕截图

之后,我进入了ubuntu的系统设置->显示器,并在那里设置了内部显示器的设置。


不需要这种级别的黑客攻击,您正在解决驱动程序中已在较新版本中修复的问题。这种方法会造成维护麻烦。
Amias

-2

您的问题可能与NVidia驱动程序有关。

尝试使用开源的Nouveau驱动程序。

转到“其他驱动程序”页面,然后选择“开源-Nouveau”选项。


1
Nouveau的司机远不及Nvidia的司机好。
阿米亚斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.