AMD's A-Sync DMA Code Makes For Fast Performance

Posted by Michael Larabel on December 12, 2012

After the benchmarks of the Radeon Gallium3D sub-allocator that in some tests yields more than a 25% performance boost, initial testing was done of the new AMD a-sync DMA engine support for the open-source Radeon driver.

Earlier this week AMD released code to support the a-synchronous DMA engines. This support goes from the Radeon HD 2000 series up through the very latest Radeon HD 7000 series graphics hardware. The DRM side of this code will be merged into the Linux 3.8 kernel while other user-space code is still forthcoming.

Christian König of AMD described the a-sync DMA code as "The async DMA can do copy/moves independent of the shader engine. So while the shader part of the GPU is busy with the rendering we can still upload new data with the DMA at the same time. Additional to that it is quite a bit more efficient than the shader engine when you just want to copy some data from A to B, or just clear a specific region of memory (memcpy/memset). So using it should result in some very nice performance improvements for certain use cases, but what Alex has released is just kernel part of the implementation, and even that is missing the CS checker. It will probably just take some more time till mesa really picks that up."

Aaron Watry, the Phoronix reader who carried out the simple Radeon Gallium3D sub-allocator tests using the Phoronix Test Suite and OpenBenchmarking.org, has now begun tests on the Radeon DRM code for this a-sync DMA engine support.

Using an AMD Radeon HD 6850 graphics card on the open-source Linux graphics driver stack, Aaron is reporting nearly a 10x improvement in performance for Unigine Heaven as a result of this new code for Linux 3.8.

He notes these early results in this forum post and says he will be conducting additional tests soon. For those wanting to see the initial performance data of this new code from AMD, the data is within the async_dma_tests result file.

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. AMD RadeonSI Gallium3D Begins Simple CL Demos
  2. Intel Shows Off GNOME3-Based Tizen Shell
  3. Linux Desktop Security Could Be A Whole Lot Better
  4. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  5. New NVIDIA Linux Driver Supports The GeForce GTX 780
  6. Chrome 28 To Offer More Speed Improvements
  7. Digia Announces "Boot To Qt" Project
  8. X.Org Libraries Hit By Round Of Security Issues
  9. Wayland's Weston Gets Output Scaling Support
  10. Raspberry Pi Gets New Wayland Weston Renderer
  11. Debian GNU/Hurd 2013 Release Brings New Packages
Latest Forum Talk
  1. Microsoft's zombie attacks Android (again)
  2. Linux Desktop Security Could Be A Whole Lot Better
  3. Raspberry Pi Gets New Wayland Weston Renderer
  4. KDE 4.11 Will Be The Last Major KDE4 Workspaces...
  5. Xserver 1.14 support will arrive with Catalyst...
  6. Chrome 28 To Offer More Speed Improvements
  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