我{n}使用 nvidia-331 驱动程序安装 nvidia-prime 的nvidia GT 540M上运行ubuntu 14.04(昨天安装)ll get right to the point:
I have a laptop (Aspire 5750G) that I run dual screen on (the built in display and a Samsung SyncMaster 2043BW). I
。我还从存储库中尝试了其他专有的nvidia驱动程序,结果相同。
我一直在 CCSM 和 nvidia-settings 中试图解决一个可疑的撕裂问题:
如果我禁用nvidia驱动程序一切顺利,但是当我激活它时,我注意到在窗口边缘发生撕裂,因为我拖动它们,并且还滞后。我一直认为这是一个垂直同步的问题,我试图解决它超过30次X,所以我决定最后寻求帮助。
需要注意的是,我还有未知的显示问题(提到here),而且我的nvidia-settings GUI没有检测到任何显示。
我在CCSM和nvidia-settings中都有同步到VBlanc ,但禁用它没有任何影响。 我在CCSM中设置了检测刷新率,它现在为50,但如果我手动设置它没有任何区别,我似乎找不到设置此位置的地方在nvidia-settings中。
让我们为您提供一些数据:
xrandr
Screen 0: minimum 8 x 8, current 3046 x 1050, maximum 16384 x 16384
LVDS-0 disconnected primary (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
LVDS1 connected 1366x768+1680+218 344mm x 194mm
1366x768 60.0*+
1360x768 59.8 60.0
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 connected 1680x1050+0+0 459mm x 296mm
1680x1050 59.9*+
1280x1024 75.0 60.0
1280x960 60.0
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
HDMI1 disconnected
DP1 disconnected
VIRTUAL1 disconnected
的xorg.conf
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
gpu-manager.conf - 我已禁用它,因为它一直覆盖xorg.conf
#start on (starting lightdm
# or starting kdm
# or starting xdm
# or starting lxdm)
task
exec gpu-manager --log /var/log/gpu-manager.log
我想要实现的事项清单:
设置监视器,以便nvidia-settings检测到它们(希望它会给我提供更多选项)
使用nvidia驱动程序设置vsync以查看是否可以消除撕裂
如果以上工作都没有:找出导致撕裂的确切原因
亲切的问候,
亚历。
答案 0 :(得分:0)
尝试使用nvidia二进制包。最简单的方法是打开驱动程序管理器选择你的版本命中。你可能像我一样使用xorg-edgers ppa取得了成功。希望这可以帮助。我有一个华硕560gtx,它适用于nvidia控制面板。您可能必须使用nv设置进行操作。我有2台电视32" LG和我的主要是Vizio剃刀领导。运行Linux Mint 17(Ubuntu 14)祝你好运
答案 1 :(得分:0)
根据https://devtalk.nvidia.com/default/topic/957814/linux/prime-and-prime-synchronization/,NVIDIA 370.23 beta驱动程序版本支持“PRIME Synchronization”,它可以解决撕裂问题。
从文章开始,首先是一些背景知识:
PRIME是Linux内核,X服务器和各种驱动程序中的一组功能,可在Linux下使用多GPU配置启用GPU卸载。它最初被设想为允许一个GPU显示由另一个GPU渲染的输出,例如在具有独立GPU和集成GPU(例如,支持NVIDIA Optimus的笔记本电脑)的笔记本电脑中。
接下来,撕裂问题的根源是:
直到最近,Linux内核和X服务器都缺少必要的功能,允许dGPU和iGPU驱动程序进行通信并将副本与扫描输出同步。由于这种限制,几乎没有任何一个驱动程序可以提供必要的同步;它需要改进更大的生态系统。
最后,最近的发展和警告:
在过去的几个月里,我一直在努力实现和上游对X服务器和iGPU内核以及用户空间驱动程序的必要改进,以便我们可以在驱动程序中利用它们。最后,他们降落(http://www.phoronix.com/scan.php?page=news_item&px=Xorg-PRIME-Sync-Double-Buffer)。不幸的是,这些更改需要打破X服务器及其驱动程序之间的二进制接口(ABI),因此它可能需要一段时间才能传播到主流发行版。
本文还列出了PRIME同步的要求,它们是:
- Linux内核4.5或更高版本
- ABI 23或更高版本(尚未正式发布)的X服务器
- 兼容的驱动程序
以及启用PRIME同步的几个配置步骤。