R600 Gallium3D Now Does Buffer Copies With CP DMA

Posted by Michael Larabel on January 09, 2013

Marek Olšák has implemented support for buffer copying using the CP DMA engine on Radeon HD 4000 "R700" GPUs and newer.

Implemented for the Linux 3.8 kernel was a-sync DMA engine support within the Radeon DRM driver. This big AMD code drop is capable of delivering performance improvements. It's described 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."

With the command submission checker in place and other improvements to the Radeon a-sync DMA code, Mesa is now taking advantage of the support. In the Tuesday code commit by Marek, the CP DMA engine is now used on R700, Evergreen, and Cayman GPUs. This is the Radeon HD 4000/5000/6000 series GPUs. The support isn't implemented for the Radeon HD 2000/3000 (R600) GPUs since there appears to be flushing issues with the destination buffer containing garbage.

This commit touches just over 100 lines of code.

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