DRI2 Sync + Swap Extensions Near Reality

Written by Michael Larabel in X.Org on 30 October 2009 at 11:13 PM EDT. 17 Comments
X.ORG
When running a modern Linux graphics driver stack in a composited environment there is a lot less tearing -- particularly with regard to video playback, but OpenGL applications too -- now than there was in the past, but there is still room for improvement. One of the ways to improve this is by properly controlling the display of buffers with how often the swaps occur and to sync them with the monitor's refresh rate or the rate at which the compositor is running. Unfortunately, the X Server and open-source graphics stack have lacked such functionality even though some OpenGL/GLX extensions for this support have been around for years. Intel's Jesse Barnes though has been working on proper DRI2 support for synchronization and swapping.

Jesse has added support to Mesa and the X Server that will allow for the appropriate OpenGL/GLX extensions that expose syncing and frame counting capabilities (SGI_swap_control, SGI_video_sync, SGIX_swap_barrier, etc). This code though is currently housed in his personal Git repositories as the patches await review and feedback (mailing list message). This DRI2 synchronization and buffer swaps code is also dependent upon revisions to dri2proto and libdrm along with the latest DRM code that will eventually be pushed into the Linux 2.6.33 kernel due to its vblank event support.

Besides cutting down on tearing and other visual defects, proper synchronization of swaps can provide a smoother experience with a consistent frame-rate and can enhance the performance of some applications. More information on the technical end of this support can be found on the composite swaps Wiki page. This support isn't yet living in Git master, but it's surely on its way, which will benefit Linux desktop users.
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