GNOME 动态三重缓冲技术,可将桌面性能提高 100%
Daniel Van Vugt 是 Canonical 的开发者,自 2020 年就开始致力于 GNOME 三重缓冲技术的开发工作。如今这个功能已经完成,该技术可将桌面性能提高 100%,并且有望跟随即将发布的 GNOME 42 一同推出。
三重缓冲(Triple Buffering)是一种图像处理技术。它使用一个前置缓存和两个后置缓存,在着色完第一个后置缓冲区的数据后,立即开始处理第二个后置缓冲区。三重缓冲技术此前主要是运用于游戏领域,已成为游戏领域的 “标配” 技术,因为它没有 Vsync 等待的时间,游戏也会更加流畅。
GNOME 上所采用的三重缓冲是一种动态采用的技术,只有当 GPU 渲染性能落后时,它才会动态地启用(前一帧运行落后于计划时)。启用三重缓冲技术后,GPU 的时钟速度将获得提升,时钟速度提升又有助于性能提升,以确保桌面能够以全帧率渲染。如果前一帧没有落后于计划,则会采用传统的双重缓冲技术,以避免过度延迟。
GNOME 动态三重缓冲只影响桌面渲染性能,而不会对游戏或其他界面产生影响。
开发者 Daniel Van Vugt 还重新测试了这个技术在不同环境下的表现,其中三重缓冲为英特尔和树莓派带来性能提升最大,最高帧率可提高 100%。
在正在进行的 WIP 合并请求中,开发者表示:
英特尔显卡现在可以 60 FPS 的速度渲染桌面,而不是 GNOME 当前双重缓冲下的 30 FPS。AMD 和 Nvidia 用户在目前无法保持全帧率渲染的地方也能因此获得提升。
不过,三重缓冲在带来性能提升的同时,也伴随着缺点。三重缓冲实际上将 GPU 提升到更高的时钟频率/性能状态,因此会影响系统的散热行为,并增加系统功耗。
目前这段代码还没有被正式合并,但有望可以在 GNOME 42,以及 Canonical 即将推出的 Ubuntu 22.04 LTS 中提供这种优化。
本文转自OSCHINA
本文标题:GNOME 动态三重缓冲技术,可将桌面性能提高 100%
本文地址:https://www.oschina.net/news/182305/gnome-triple-buffering