DRI2 Sync & Swap For ATI Finally Comes About

Posted by Michael Larabel on May 07, 2010

Last year a new set of DRI2 extensions came about for sync and swap support of display buffers to better reduce potential "tearing" that may appear on displays in some composited environments. This work that's exposed to the client through OpenGL/GLX extensions also can lead to improved performance, video memory savings, and other benefits as talked about extensively on the Composite Swap Wiki page. A new GLX swap event extension also came about out of expressed needs by the Clutter/Mutter developers.

Benefiting from this new code requires recent graphics packages, like X.Org Server 1.8, newer dri2proto / glproto / libdrm, and Mesa 7.8. The hardware drivers have also needed to be updated to implement these capabilities. Up to this point only the Intel Linux driver has provided this sync and swap support, since from the onset this code was developed by the Intel OSTC developers and as such their driver was the one targeted for the reference implementation. Fortunately, the ATI driver is now picking up the support.

Red Hat's Jerome Glisse has been porting the sync and swap extension support to the ATI kernel mode-setting driver. This morning Jerome put out a single, 500-line patch that implements this useful functionality. This patch goes against the latest xf86-video-ati DDX driver Git code-base and it also requires a change (for querying the hardware CRTC ID) to the Radeon DRM code found within the Linux kernel, which can be found in a separate patch that was recently published by Jerome.

Jerome reports that so far his testing has been favorable and now he's looking for the community to engage in testing out this sync and swap support for ATI hardware on the open-source stack. It will require very up-to-date components of the Linux graphics stack, as mentioned above, and hopefully the needed DRM change(s) will make it into the Linux 2.6.35 kernel and the DDX alterations will make it into the next xf86-video-ati release.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Intel Linux OpenGL Driver Leading Over Apple OS X
  2. The Cost Of Ubuntu Disk Encryption
  3. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  4. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
Latest Linux News
  1. Phoronix Test Suite 4.6.0 "Utsira" Released
  2. New Intel X.Org Driver Supports All Of Haswell
  3. SQLite Now Faster With Memory Mapped I/O
  4. Microsoft Releases Skype For Linux 4.2, Has Bug-Fixes
  5. Qt For Tizen Launches, Based On Qt 5.1
  6. KTAP Released For Linux Kernel Dynamic Tracing
  7. Linux 3.10-rc2 Kernel Takes In A Few Extra Pulls
  8. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  9. Handbrake 0.9.9 Supports OpenCL Offloading
  10. Freedreno Gallium3D Now Banging The Adreno A3XX
  11. Jolla Announces Their First Phone
Latest Forum Talk
  1. DragonFly 3.4 vs FreeBSD 9.1 on phoronix test...
  2. The Cost Of Ubuntu Disk Encryption
  3. Kubuntu, KDE Has Little Hope For Ubuntu's Mir
  4. Will Unreal Engine 4 Games Come To Linux?
  5. New Intel X.Org Driver Supports All Of Haswell
  6. Handbrake 0.9.9 Supports OpenCL Offloading
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite