Zink Lands Support For Partial Updates / Damage Handling

Written by Michael Larabel in Mesa on 29 February 2024 at 10:30 AM EST. 30 Comments
MESA
Valve contractor Mike Blumenkrantz is back at it working on some exciting improvements to Mesa and in particular for the Zink OpenGL-on-Vulkan implementation.

Merged yesterday was the latest Kopper code for hooking up damage regions support. Blumenkrantz explained in that merge request:
"this plumbs damage regions from the API all the way through gallium such that x11/wayland/whatever are able to send damage updates to the display server"

This addresses LLVMpipe/DRISW not supporting EGL's KHR_partial_update and KHR_swap_buffers_with_damage. The newest merge request that landed today in Mesa 24.1-devel is then hooking up partial updates / damage support to Zink. As Mike simply puts it:
"this makes display servers vroom"

This allows Zink to support the EGL_KHR_partial_update extension for allowing efficient partial updates of surfaces by not having to deal with areas of the surface that have not changed between frames. The Zink driver in turn is relying on Vulkan's VK_KHR_incremental_present extension that allows an application to specify a list of rectangular modified regions of each image to present. For cases where only a small portion of the screen may be changing, this partial updates / damage tracking allows for more efficient presentation -- better performance and possible power-savings. While for gaming this isn't as useful, this partial updates / damage support can be beneficial particularly when using Zink as the OpenGL driver for the desktop.

Zink partial updates support merged


Since GNOME 42 Mutter has supported EGL_KHR_partial_update, KDE Plasma's KWin introduced support originally three years ago, and is commonly supported elsewhere on the modern Linux desktop.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week