n 卡闭源驱动,对屏幕撕裂就没有办法了吗?

2017-08-27 15:22:38 +08:00
 woyaojizhu8
神舟战神 z7, i7 6700hq+970m, 已在 bios 屏蔽核显,opensuse leap 42.2 , gnome 3.20.2 , 内核 4.4.79 ,n 卡驱动 384.59, 有时会出现画面撕裂的问题(非只有视频撕裂,而是各种 gnome 窗口都会有),试过几种方法都无效:
1.NVIDIA x server settings -> opengl settings -> sync to vblank
2.ForceCompositionPipeline
3.ForceFullCompositionPipeline
4.triple buffer
请问还有其他可以尝试的办法吗?换用开源驱动或者核显就不考虑了
6473 次点击
所在节点    Linux
16 条回复
AckywOw
2017-08-27 15:28:13 +08:00
偶只知道垂直同步
reus
2017-08-27 15:53:45 +08:00
vsync 的问题
shang1jk
2017-08-27 16:13:01 +08:00
换 kde 试试。
woyaojizhu8
2017-08-27 16:15:53 +08:00
@reus #2 我已经设了 sync to vblank 了 ,还有别的方法?
s3040608090
2017-08-27 17:14:15 +08:00
记得以前用 kde,有个关闭垂直同步的选项好像可以解决窗口撕裂。
s3040608090
2017-08-27 17:14:47 +08:00
纠正,应该是开启垂直同步的选项。
htfy96
2017-08-27 17:16:23 +08:00
日常核显+optimus 比较靠谱
stanjia
2017-08-27 17:43:19 +08:00
换 FreeBSD 试试
zyqf
2017-08-27 17:47:30 +08:00
wayland
wb14123
2017-08-27 18:09:08 +08:00
KDE ForceFullCompositionPipeline 亲测好使
Cryse
2017-08-27 20:18:39 +08:00
看本子用没用 Optimus 双卡切换技术,如果用了,去查 NVIDIA Optimus PRIME and PRIME Synchronization, 如果没用的话就不清楚了
要求内核 4.5+, X server ABI 23+
我之前在一个双卡本上测试完美无撕裂,具体设置可以参考 Arch Wiki 和 NVIDIA 官方开发论坛的帖子。
greenskinmonster
2017-08-27 22:04:53 +08:00
gnome 3.24
环境变量设置了这个

CLUTTER_VBLANK=True

然后就是 nvidia-settings 里面
在 OpenGL Settings 里面,把 Sync to VBlank 打开了,Allow Flipping 也开了,不知道有没有关系。
目前驱动版本是 384.69 ,包括近期的几个版本都没啥明显的撕裂问题。

再早点的版本有点问题是,gnome 刚启动的时候有撕裂,过几分钟就好了,原因不明。
drackzy
2017-08-27 22:14:59 +08:00
13 late rMBP gt750m ubuntu 16.04 navida 驱动 384 ,没感觉有撕裂啊,看视频、电影的话用 VLC 播放没有撕裂
drackzy
2017-08-27 22:16:27 +08:00
对了更新内核试试,现在用的 4.9.44 内核
greenskinmonster
2017-08-27 22:16:43 +08:00
/etc/X11/xorg.conf.d/nvidia.conf 文件内容,你参考下吧

Section "Device"
Identifier "Device0"
Driver "nvidia"

Option "NoLogo" "true"
Option "AllowGLXWithComposite" "true"
Option "Coolbits" "1"
Option "HWCursor" "on"
Option "DPMS" "true"
Option "RenderAccel" "on"
Option "AddARGBGLXVisuals" "true"
Option "NoFlip" "true"
Option "DamageEvents" "True"
Option "TripleBuffer" "True"
EndSection

Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24

Option "TripleBuffer" "True"
Option "metamodes" "nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"

SubSection "Display"
Depth 24
EndSubSection
EndSection
Neveroldmilk
2017-08-28 08:56:31 +08:00
内核必须更新到最近的版本,linux 的内核和硬件驱动绑定比较恶心。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/386133

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX