Dynamic Triple Buffering Merged For GNOME 48
([GNOME] 4 Hours Ago
Dynamic Triple Buffering)
- Reference: 0001526934
- News link: https://www.phoronix.com/news/GNOME-48-Triple-Buffering
- Source link:
As quite a Valentine's Day treat, the long-in-development [1]dynamic triple buffering support for GNOME's Mutter compositor was just merged ahead of next month's [2]GNOME 48 desktop release!
Ubuntu maker Canonical has been working on these patches going back a number of years for dynamic double/triple buffering to help with rendering on lower-end GPUs such as Intel integrated graphics and Raspberry Pi hardware. If the previous frame being rendered was running late, triple buffering can be dynamically engaged to help ensure the GPU clock speed is boosted to help in meeting on-time/better performance.
Canonical's Daniel van Vugt who has led the effort the past 4+ years explained in the now-merged [3]merge request :
"Use triple buffering if and when the previous frame is running late. This means the next frame will be dispatched on time instead of also starting late. It also triggers a GPU clock boost if deemed necessary by the driver. Although frequency scaling is not required to get a performance gain here because even a fixed frequency GPU will benefit from not over-sleeping since CPU/GPU parallelism is improved.
If the previous frame is not running late then we stick to double buffering so there's no latency penalty when the system is able to maintain full frame rate.
In my case this improves 4K overview animations on a basic Intel GPU from 30 FPS to 60 FPS."
Ubuntu and Debian have been carrying these triple buffering patches out of tree while now today it was accepted for merging into GNOME 48.
With this triple buffering support, [4]initial HDR bits , [5]a new default font , and [6]many other changes , GNOME 48 is shaping up to be a heck of a major release due out in mid-March. GNOME 48 in turn will be found on the likes of Ubuntu 25.04 and Fedora 42 this spring.
[1] https://www.phoronix.com/search/dynamic+triple+buffering
[2] https://www.phoronix.com/search/GNOME+48
[3] https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1441
[4] https://www.phoronix.com/news/GNOME-Mutter-48-Beta
[5] https://www.phoronix.com/news/GNOME-48-Adwaita-Sans
[6] https://www.phoronix.com/search/GNOME+48
Ubuntu maker Canonical has been working on these patches going back a number of years for dynamic double/triple buffering to help with rendering on lower-end GPUs such as Intel integrated graphics and Raspberry Pi hardware. If the previous frame being rendered was running late, triple buffering can be dynamically engaged to help ensure the GPU clock speed is boosted to help in meeting on-time/better performance.
Canonical's Daniel van Vugt who has led the effort the past 4+ years explained in the now-merged [3]merge request :
"Use triple buffering if and when the previous frame is running late. This means the next frame will be dispatched on time instead of also starting late. It also triggers a GPU clock boost if deemed necessary by the driver. Although frequency scaling is not required to get a performance gain here because even a fixed frequency GPU will benefit from not over-sleeping since CPU/GPU parallelism is improved.
If the previous frame is not running late then we stick to double buffering so there's no latency penalty when the system is able to maintain full frame rate.
In my case this improves 4K overview animations on a basic Intel GPU from 30 FPS to 60 FPS."
Ubuntu and Debian have been carrying these triple buffering patches out of tree while now today it was accepted for merging into GNOME 48.
With this triple buffering support, [4]initial HDR bits , [5]a new default font , and [6]many other changes , GNOME 48 is shaping up to be a heck of a major release due out in mid-March. GNOME 48 in turn will be found on the likes of Ubuntu 25.04 and Fedora 42 this spring.
[1] https://www.phoronix.com/search/dynamic+triple+buffering
[2] https://www.phoronix.com/search/GNOME+48
[3] https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1441
[4] https://www.phoronix.com/news/GNOME-Mutter-48-Beta
[5] https://www.phoronix.com/news/GNOME-48-Adwaita-Sans
[6] https://www.phoronix.com/search/GNOME+48
pWe00Iri3e7Z9lHOX2Qx