Dan*_*drd 6 nvidia gpu manjaro proprietary-drivers
我已经安装了 Manjaro Linux。我的显卡是 Nvidia GTX 1050Ti。
当我启动计算机并尝试观看视频时,我注意到屏幕撕裂严重。当我转到 Nvidia X 服务器设置并启用“强制完整合成管道”选项时,此问题得到解决。
有没有办法永久设置这个选项,这样我就不必每次重新启动计算机时都手动启用它?
小智 7
我的笔记本电脑配备了 Quadro K2100M,运行带有 KDE Plasma 5.17(来自neon repo)的Ubuntu Bionic并使用nvidia-driver-430
.
由于我在家中和工作中的显示器有一组不同的配置,我需要一些动态的东西,这对我有用:
我编写了以下脚本来处理屏幕的动态配置 ( ~/bin/force-composition-pipeline.sh
):
#!/bin/bash
s="$(nvidia-settings -q CurrentMetaMode -t)"
if [[ "${s}" != "" ]]; then
s="${s#*" :: "}"
nvidia-settings -a CurrentMetaMode="${s//\}/, ForceCompositionPipeline=On\}}"
fi
Run Code Online (Sandbox Code Playgroud)chmod +x ~/bin/force-composition-pipeline.sh
ln -s ~/bin/force-composition-pipeline.sh ~/.config/autostart-scripts/
Run Code Online (Sandbox Code Playgroud)请注意,我发现非满ForceCompositionPipeline
对我来说已经足够了。
您可以在终端中设置“强制完整组合管道”选项,如下所示:
$ nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"
Run Code Online (Sandbox Code Playgroud)
要自动执行此操作,最简单的方法是将其放入您的.bashrc
. 要继续,只需在终端中输入以下内容:
$ echo "$ nvidia-settings --assign CurrentMetaMode=\"nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }\"" >> ~/.bashrc
Run Code Online (Sandbox Code Playgroud)
您可以注销并重新登录(或重新启动)以应用此功能。请注意,由于“自动选择”,这意味着仅是一个显示器解决方案。
另一种方法是在内部执行相同的操作~/.nvidia-settings-rc
,但行为可能会随着时间而改变,而在 中.bashrc
,您可以确定它是如何完成的。
关于屏幕撕裂,您可能想尝试其他调整。
由于您使用的是 Manjaro,我假设您使用的是 KDE。您可以告诉窗口管理器 (KWin) 使用三重缓冲或等待当前图像显示后再更新屏幕。
# echo "export __GL_YIELD=\"USLEEP\"" >> /etc/profile.d/kwin.sh
Run Code Online (Sandbox Code Playgroud)
# echo "export KWIN_TRIPLE_BUFFER=1" >> /etc/profile.d/kwin.sh
Run Code Online (Sandbox Code Playgroud)
请勿同时启用以上两项。如果您在 KWin 中启用三重缓冲,请务必nvidia-settings
启用三重缓冲。
归档时间: |
|
查看次数: |
18532 次 |
最近记录: |