Vulkan Present Timing Extension With Aim To Avoid Stuttering
The Vulkan System Integration working group has decided to publish their work-in-progress extension on VK_EXT_present_timing as their effort to expose the presentation engine's display details and better allow scheduling a present to happen at a specific time.
VK_EXT_present_timing is a big effort about helping to reduce stuttering and use-cases like better handling of variable refresh rate setups and other scenarios in wanting to ensure the presentation of a frame/image happens on schedule to avoid anomalies.
VK_EXT_present_timing is being worked on by the likes of NVIDIA, Google, AMD, Intel, Collabora, Unity, and Samsung.
There is also a work-in-progress present-timing extension for Wayland to handle the enhanced presentation timing requests and events while being modeled around this proposed Vulkan extension.
Both the Vulkan and Wayland extensions remain a work-in-progress but are now out for public discussion to garner feedback from more developers.
More details on the VK_EXT_present_timing extension in its current form via this GitHub pull request.
VK_EXT_present_timing is a big effort about helping to reduce stuttering and use-cases like better handling of variable refresh rate setups and other scenarios in wanting to ensure the presentation of a frame/image happens on schedule to avoid anomalies.
VK_EXT_present_timing is being worked on by the likes of NVIDIA, Google, AMD, Intel, Collabora, Unity, and Samsung.
Traditional game and real-time animation applications need to correctly position their geometry for when the presentable image will be presented to the user. To accomplish this, applications need various timing information about the presentation engine's display. They need to know when presentable images were actually presented, and when they could have been presented. Applications also need to tell the presentation engine to display an image no sooner than a given time. This allows the application to avoid stuttering, so the animation looks smooth to the user.
There is also a work-in-progress present-timing extension for Wayland to handle the enhanced presentation timing requests and events while being modeled around this proposed Vulkan extension.
Both the Vulkan and Wayland extensions remain a work-in-progress but are now out for public discussion to garner feedback from more developers.
More details on the VK_EXT_present_timing extension in its current form via this GitHub pull request.
13 Comments