之前以 60 FPS 运行的程序现在被锁定为 40 FPS。禁用 VSync 可产生正确的帧速率。
我的刷新率在设置菜单中设置为 60.02 Hz。
我在一台集成英特尔显卡的笔记本电脑上运行。
答案1
我按照这个答案中的步骤解决了这个问题:https://unix.stackexchange.com/a/227894
我的xrandr
输出仅列出了一种显示模式:1920x1080 60.02*+ 40.03
,它没有产生所需的帧速率。
首先我运行gtf 1920 1080 60
,它产生了这个输出:"1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync
。
我使用它来添加一种新的显示模式xrandr
:xrandr --newmode "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync
/
然后我将其添加为笔记本电脑屏幕的可能选项:xrandr --addmode eDP-1 "1920x1080_60.00"
。此时屏幕闪烁,但仍然没有切换。
最后,我强制将显示模式设置为屏幕的输出:xrandr --output eDP-1 --mode "1920x1080_60.00"
。此后,我的刷新率恢复到之前的 60。
答案2
这可能是 Linux 内核 4.14 中的一个错误。以下是一些讨论该问题的帖子:
https://github.com/NixOS/nixpkgs/issues/31999
https://forum.manjaro.org/t/poor-opengl-performance-on-linux-4-14/35453/150