“Steam Deck等搭载AMD硬件的游戏掌机,开启节能性能优先(EPP)模式后,运行部分游戏时经常遇到卡顿。”内核程序员戴维·韦尔内提交补丁时指出的这个问题,正是很多掌机玩家在平衡续航与流畅度时会碰到的尴尬。

卡顿的根源藏在AMD驱动对处理器行为的误判里。当某个繁忙线程被频繁地短暂休眠,驱动会把这种模式错误解读为系统性能目标应该下调的信号。线程被唤醒后,启动频率低于实际所需,结果就是帧延迟增加、丢帧频发,低端帧生成时间被明显拉长。反映到游戏中,就是画面突然一顿的那种“不跟手”感,光看平均帧数根本发现不了。

打开网易新闻 查看精彩图片

把CPU切换到“性能”模式可以一劳永逸地消灭这样的卡顿,但代价是直接取消掉EPP原本的节能收益,掌机续航会明显缩短。韦尔内提交的补丁换了一种更精细的思路:它不像一刀切的模式切换,而是监测每个CPU核心的负载状态。一旦识别出某个繁忙线程能通过更高的时钟频率提升性能,系统就会短暂地仅把该核心切至“性能”设置,其他核心依然保持原样。

这种按核心调度的做法,在《文明6》的实际测试中带来了清晰的数据回报:1% low帧率提升31.8%,p99帧生成速度提升4.1%。1% low帧率衡量的是最慢那1%帧画面的平均帧率,专门用来捕捉突然卡顿,比平均帧率更能反映真实的流畅体验。p99帧生成速度则意味着99%的帧生成时间至少达到了某个水平,同样指向尾部延迟的改善。

值得注意的是,玩家安装补丁后,游戏的平均FPS帧率并不会受影响。它只做一件事——缓解EPP模式下那些破坏沉浸感的卡顿,同时保留节能模式为掌机带来的额外续航时间。对于需要在电池与性能之间走钢丝的Steam Deck用户来说,这相当于找回了被浪费掉的那部分能效。

目前这项补丁还处在待合并阶段,内核级实现的复杂性使得它距离变成所有用户都能直接受益的正式特性仍有一段路。Vernet已经发布了技术说明,但在其他常见游戏基准测试中的表现还有待验证。无论如何,这次提交让Linux游戏玩家看到了一个更细腻的优化方向:不靠暴力拉高全核频率,而是精准地给需要加速的核心临时踩一脚油门。