AMD R600g LLVM Back-End Is Working A Bit Better

Posted by Michael Larabel on June 11, 2012

The R600g LLVM shader compiler back-end that's primarily intended for the Radeon Gallium3D compute support is now working a bit better for graphics support compared to when it was first committed.

Back in April the R600g LLVM compiler was hooked-up as part of AMD's effort to enable OpenCL/GPGPU support within their open-source driver stack. They've been working on the support for months and it was in early December of last year that the R600g LLVM back-end first surfaced. The LLVM back-end hasn't yet been merged in upstream LLVM but is currently living within Mesa and can be built against LLVM 3.1.

The LLVM back-end for the R600 Gallium3D driver currently isn't used or built by default but requires a build-time switch. When the back-end is integrated, the R600g LLVM support can still be toggled at run-time using the R600_LLVM environment variable.

In April after everything was merged I tried out the Radeon Gallium3D LLVM compiler back-end to see how it would work out for graphics. OpenCL is the target of the shader compiler but it could be used for OpenGL's GLSL too. Back in April it was a broken wreck for this graphics support with Xonotic and other games not rendering correctly, etc.

While GLSL on the R600g LLVM back-end hasn't been the primary target, since April the support has improved. This weekend I tested out Mesa Git master with LLVM 3.1 and it's now working much better when the LLVM back-end is enabled. Xonotic shaders now are working correctly, etc. I didn't encounter any visual defects like I saw when trying it out nearly two months ago.

Though if you're hoping for any performance changes, there weren't any major differences spotted in the few tests that I ran. Granted, the tests were just measuring the in-game frame-rates and not the shader compiler time, etc. However, for anyone interested in seeing some Mesa Git benchmarks from a Radeon HD 4890 setup with the LLVM back-end enabled, head on over to OpenBenchmarking.org.


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. Raspberry Pi Gets New Wayland Weston Renderer
  2. Debian GNU/Hurd 2013 Release Brings New Packages
  3. Intel Ultrabook Performance Is Faster With Mesa 9.2
  4. Hot Relocation HDD To SSD Support For Btrfs
  5. Phoronix Test Suite 4.6.0 "Utsira" Released
  6. New Intel X.Org Driver Supports All Of Haswell
  7. SQLite Now Faster With Memory Mapped I/O
  8. Microsoft Releases Skype For Linux 4.2, Has Bug-Fixes
  9. Qt For Tizen Launches, Based On Qt 5.1
  10. KTAP Released For Linux Kernel Dynamic Tracing
  11. Linux 3.10-rc2 Kernel Takes In A Few Extra Pulls
Latest Forum Talk
  1. Kubuntu, KDE Has Little Hope For Ubuntu's Mir
  2. Raspberry Pi Gets New Wayland Weston Renderer
  3. Debian GNU/Hurd 2013 Release Brings New Packages
  4. Hot Relocation HDD To SSD Support For Btrfs
  5. Qt For Tizen Launches, Based On Qt 5.1
  6. gnome 3.8 in RHEL7?
  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