快科技4月12日消息,Valve Linux图形驱动团队工程师Natalie Vock近日提出了一项针对Linux系统的显存优先级管理方案,可提升8GB及以下显存显卡的游戏性能。
该方案通过内核补丁和配套工具,确保前台游戏对显存的优先使用权,将后台任务强制迁移至系统内存。
问题的根源在于Linux内核缺乏对显存使用优先级的判断能力,当显存不足时,系统会随机将程序数据迁移至GTT(图形转换表,即系统内存中的GPU寻址区域),而不会区分前台游戏和后台程序。
Vock以《赛博朋克2077》为例进行测试,在8GB显卡上,游戏仅使用了约6GB显存,有1.37GB数据被迁移至GTT,导致帧率不稳定和卡顿。
Vock开发的解决方案包含两个核心组件,其一是dmemcg-booster,可标记需要"保护"的前台程序,使其显存数据不会被系统驱逐,转而将后台任务挤入速度更慢的系统内存。
应用该补丁后,《赛博朋克2077》的显存占用从6GB提升至7.4GB,GTT占用从1.37GB降至仅650MB,游戏运行流畅度明显改善。
其二是plasma-foreground-booster,可自动识别KDE桌面环境中的前台窗口并为其分配显存优先级。
目前这些补丁正在集成到CatchyOS中,并已提交Linux内核合并申请。
需要注意的是,该方案仅适用于AMD显卡,NVIDIA显卡由于闭源驱动的内存管理机制无法使用。
