You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 24.04下Wayland模式4K 60Hz显示器实际帧率仅30Hz的问题排查

Ubuntu 24.04下Wayland模式4K 60Hz显示器实际帧率仅30Hz的问题排查

遇到这种X11正常但Wayland掉帧的情况,大概率是NVIDIA驱动与Wayland的适配细节没配置对,我给你梳理几个常见的排查方向,你一步步试:

  • 先确认NVIDIA Wayland的基础支持是否开启
    NVIDIA对Wayland的支持需要内核参数nvidia-drm.modeset=1,很多时候默认没开。你可以按以下步骤配置:

    1. 打开终端,编辑grub配置文件:sudo nano /etc/default/grub
    2. 找到GRUB_CMDLINE_LINUX_DEFAULT这一行,在引号里添加nvidia-drm.modeset=1,比如原来的内容是"quiet splash",改成"quiet splash nvidia-drm.modeset=1"
    3. 保存退出(Ctrl+O,回车,Ctrl+X),然后更新grub:sudo update-grub
    4. 重启电脑,再登录Wayland测试一下。
  • 验证显示器的实际刷新率模式
    系统设置显示的60Hz可能只是名义上的,咱们用命令行确认显示器是否真的能输出4K@60Hz:

    1. 先找到你的显示器对应的DRM接口,运行ls /sys/class/drm/,会看到类似card0-DP-1card0-HDMI-A-1这样的条目,找和你显示器连接对应的那个(比如用HDMI就连HDMI开头的)
    2. 查看该接口支持的模式:cat /sys/class/drm/card0-HDMI-A-1/modes(替换成你的接口名)
    3. 看看输出里有没有3840x2160@60.00这样的模式,如果没有,说明显示器和显卡的连接可能有问题(比如用了不支持4K@60的HDMI线,或者接口版本不够);如果有,那继续往下排查。
  • 检查NVIDIA的功率/性能设置
    有时候NVIDIA的节能模式会偷偷限制帧率,尤其是Wayland下可能没在图形界面显示这个选项:

    1. 打开终端,运行nvidia-settings,找到「PowerMizer」选项,把模式改成「Prefer Maximum Performance」(如果Wayland下这个选项灰了,用命令行:nvidia-settings -a [gpu:0]/GpuPowerMizerMode=1,1代表最高性能模式)
    2. 也可以检查功率限制:nvidia-smi,看「Power Limit」是不是100%,如果不是,用sudo nvidia-smi -pl 100拉满功率限制。
  • 排查GNOME Wayland的缩放与扩展冲突
    如果你开了 fractional scaling(比如125%、150%),在NVIDIA+Wayland的组合下可能会出现帧率减半的情况,因为缩放需要额外的GPU计算,导致降帧:

    1. 打开系统设置→显示,把缩放改成100%,重启后再测试UFO帧率
    2. 另外,禁用所有GNOME扩展(可以用「Extensions」应用,或者命令gnome-extensions disable --all),然后重启GNOME(Alt+F2,输入r回车),再测试是否恢复60FPS,排除扩展冲突的可能。
  • 测试纯净的Wayland环境
    如果上面的方法都没用,可能是你的用户配置文件出了问题:

    1. 创建一个新的测试用户:sudo adduser testuser,设置好密码
    2. 注销当前用户,用新用户登录Wayland模式,再测试UFO帧率
    3. 如果新用户下正常,说明是原用户的配置文件(比如~/.config下的GNOME或Wayland相关配置)有问题,可以备份后重置原用户的配置。

备注:内容来源于stack exchange,提问作者amr

火山引擎 最新活动