如何使用 nvidia GTX 960 M 消除 16.04 中的屏幕撕裂现象?

如何使用 nvidia GTX 960 M 消除 16.04 中的屏幕撕裂现象?

我的 16.04 安装存在严重的屏幕撕裂问题。例如,如果我将窗口拖过屏幕的侧面,它就会出现碎片,导致窗口底部比顶部落后很多,而在观看视频时,屏幕底部会比顶部落后几帧。

我尝试过以下问题中给出的解决方案,但不幸的是,都没有帮助:

我的显卡是 Nvidia GeForce GTX 960M,我正在使用NVIDIA binary driver - version 361.42 from nvidia-361

当我运行 15.10 时也出现这个问题。

答案1

我在 /g/ 上找到了简单的解决方法。将此命令添加到您的启动命令中

nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"

当然,如果您使用 Nvidia 驱动程序,那么这个方法就可以奏效。

编辑:因此,对于多显示器设置,我建议使用该Nvidia X server settings程序,转到X Server Display Configuration并使用Save to X configuration file。现在找出/etc/X11/xorg.conf并添加{ ForceCompositionPipeline = On}每个显示器设置(+0+0 和 +something+someting)

此外,您还可以执行sudo apt install compton并添加compton启动命令。

编辑:我不知道这种情况持续了多久,但 NVIDIA X 服务器设置程序nvidia-settings有一个选项可以图形方式执行 ForceFullCompositionPipeline。在“X 服务器显示配置”菜单中,单击“高级...”,勾选“强制完整合成管道”,然后点击“保存到 X 配置文件”。如果您没有预定义的配置文件路径,请/etc/X11/xorg.conf在文件路径文本框中键入并保存。

答案2

到目前为止我尝试过的唯一解决方案并不是很好,但它是:使用 Intel GPU 而不是 Nvidia GPU. 它可减少大部分屏幕撕裂。

在 Nvidia X Server 设置 ( nvidia-settings) 中,转到 PRIME 配置文件并选择英特尔(省电模式)。 或者sudo prime-select intel

我使用的是 nvidia-370,这是目前官方发布的版本,搭配 Nvidia 940MX。讽刺的是,他们的驱动程序似乎仍然比英特尔驱动程序差。好的一面是,我的电池寿命几乎增加了一倍,所以这是一个相当不错的权衡。

更新:使用内核 4.7.0 的默认英特尔驱动程序,完全没有屏幕撕裂问题。grub 中带有 nomodeset 的 nvidia-387 似乎没问题,但亮度变化被禁用,所以我暂时不使用它。

答案3

虽然有点晚了,但我还是建议你换到 XFCE4 或类似的非合成 DE。至少就我而言(Lenovo Y580,opensuseLeap 42.1 + bumblebee),我通过这种方式解决了 Firefox 中的屏幕撕裂和滚动缓慢的问题。干杯!!!!

答案4

这个问题我已经困扰我很久了,现在我刚刚安装了 nouveau 驱动程序。试试这篇文章中的解决方案,我很想知道它是否有效:http://ubuntuforums.org/showthread.php?t=2235382

也许还有这个?但对我来说没用……https://psyq123.wordpress.com/2015/09/20/another-way-to-fix-tearing-and-vsync-issues-using-the-nvidia-driver/

好的,花了一些功夫,但我修复了它,如下所示:

打开 CLI 并执行以下操作:

sudo nvidia-xconfig

然后:

sudo nvidia-settings

在设置中设置屏幕分辨率和刷新率Xserver(我将其设置为 1920x1200 @60hz)并将其保存到xorg.conf

然后做:

sudo nano /etc/X11/xorg.conf

编辑设备部分如下:

Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 650"
Option "RegistryDwords" "PerfLevelSrc=0x2222"
Option "TripleBuffer" "True"
EndSection

这会将卡设置为性能模式并启用三重缓冲。

nvidia-settings/OpenGL集合中:

Sync to Vblank
Allow Flipping
Use Conformant Texture Clamping

保存您的配置并重新启动 X 服务器。

相关内容