app*_*rat 12 arch-linux configuration graphics nvidia
我想为我的 nvidia 显卡禁用 VSync(在 nvidia 设置中称为“同步到 VBlank”)。
但是配置只有在我启动 nvidia-settings 工具时才会生效。重新启动后,系统 VSync 再次启用,我必须再次启动程序。
我尝试导出xorg.conf并将其放入/etc/X11/但没有成功。
所以我的问题是如何在 nvidia-settings 工具中进行持久更改?
app*_*rat 11
查看自述文件有时确实有帮助:)
这种行为是有意让不同用户有机会拥有自己的设置。
简而言之,nvidia-settings 配置文件存储在其中~/.nvidia-settings-rc,可以通过nvidia-settings --load-config-only在启动时调用来执行。
有关更多详细信息,请参阅自述文件的相关部分:
4)自动加载设置
NVIDIA X 驱动程序不会在 X 服务器的运行之间(甚至在使用 xdm、gdm 或 kdm 登录和注销 X 之间)保留使用 nvidia-settings 设置的值。这是有意为之,因为不同的用户可能有不同的偏好,因此这些设置以每个用户为基础存储在存储在用户主目录中的配置文件中。
配置文件名为“~/.nvidia-settings-rc”。您可以使用“--config”命令行选项指定不同的配置文件名。
在运行 nvidia-settings 并生成配置文件后,您可以运行:
nvidia-settings --load-config-only
在以后的任何时间再次将这些设置上传到 X 服务器。例如,您可以将上述命令放在 ~/.xinitrc 文件中,以便在您登录 X 时自动应用您的设置。
您的 .xinitrc 文件控制着您在登录 X(或 startx)时应该启动哪些 X 应用程序,可能如下所示:
nvidia-settings --load-config-only & xterm & evilwm
或者:
nvidia-settings --load-config-only & gnome-session
如果您还没有 ~/.xinitrc 文件,那么很可能 xinit 正在使用系统范围的 xinitrc 文件。这个系统范围的文件通常在这里:
/etc/X11/xinit/xinitrc
要使用它,但也有 nvidia-settings 上传您的设置,您可以创建一个 ~/.xinitrc 的内容:
nvidia-settings --load-config-only & . /etc/X11/xinit/xinitrc
系统管理员可以选择将 nvidia-settings load 命令直接放在系统 xinitrc 脚本中。
有关配置 ~/.xinitrc 文件的更多详细信息,请参阅 xinit(1) 联机帮助页。
作为对上一个答案的补充,nvidia-settings 仅在配置文件中记录与 X 屏幕相关的那些属性。还有其他设置可以应用于其他组件;这些都没有保存。
如果您看一下,配置文件中的所有属性都以{host}:0.0. 其他可以设置的属性与GPU等相关。
例如,我使用连接到 NVidia 卡的 HDTV 并且需要重置 Overscan Compensation(以减小显示的屏幕尺寸以适应物理屏幕)。这可以从 GUI 进行调整,但不会存储在配置文件中。从命令行,命令是:
nvidia-settings --assign :0[gpu:0]/OverscanCompensation[DFP-1]=80
Run Code Online (Sandbox Code Playgroud)
请注意,属性名称包含 GPU 规范。
幸运的是,SyncToVBlank它在配置文件中,所以只要加载它就应该为你设置它。如果您执行该命令nvidia-settings --query all,它将列出所有属性和适用的目标。