1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

AMD R600 LLVM Back-End Called For Inclusion

AMD

Published on 26 March 2012 01:10 PM EDT
Written by Michael Larabel in AMD
75 Comments

Tom Stellard of AMD has called upon the LLVM developers to include the R600 GPU back-end into the LLVM project, which is the code for generating compute and graphics shaders inside the LLVM compiler infrastructure for targeting Radeon HD 2000 through HD 6000 series graphics processors.

For months Stellard has been working on an LLVM back-end for the Radeon Gallium3D driver as they worked to bring up OpenCL support over their open-source graphics driver. They now have Radeon Gallium3D OpenCL working and are working towards mainlining the respective components.

This back-end does leverage the AMD IL code generator for LLVM that was open-sourced last December. This R600 LLVM back-end for R600 through Northern Islands GPUs is now in a state for including into upstream LLVM, Tom Stellard believes. "The r600 backend is being developed as a part of the Open Source compute stack in Mesa, which uses the Gallium API. It uses large portions of the AMDIL backend which was open-sourced last December and you'll notice the TargetMachine for this backend (AMDGPUTargetMachine) is a sub-class of AMDILTargetMachine."

In Tom's email this morning to LLVM developers he also mentions:

- They are currently working on an LLVM back-end for their GCN-based Radeon HD 7000 "Southern Islands" GPUs and are also looking to get that into LLVM as soon as possible when the code has been cleared for release.

- All of AMD's code for this is under a BSD license, but the AMD IL code has a clause concerning US export laws for where this can be utilized. AMD hopes this won't cause a problem for integration into the LLVM tree.

- Tom is wondering about any other steps to land this R600 back-end in LLVM or what other changes are required. "My top priority is to get the backend into the LLVM tree, so when you provide feedback if you could be clear about what changes are needed to get the backend into the tree versus what changes are just general improvements, I would appreciate it."

This email announcing the R600 LLVM back-end for inclusion was just sent minutes ago, so there's not yet any responses from the upstream LLVM developers. Hopefully they will be willing to take this R600 back-end soon since LLVM 3.1 is set for release in May.

In terms of the rest of the OpenCL Gallium3D stack, thanks to the work by AMD as well as those within the Nouveau driver camp, the open-source OpenGL support is on approach for landing in mainline. The first of the Gallium3D OpenCL infrastructure patches were sent into the mailing list last week. The Clover (OpenCL) state tracker also needs to land. But what's not yet ready for merging at the moment is the actual R600g and Nouveau driver implementations of the Gallium3D compute infrastructure. The driver-specific portions of the GPGPU computing code is still considered immature at this point -- years after the OpenCL 1.0 specification was ratified.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. Gigabyte AM1M-S2H
  2. AMD's New Athlon/Semprons Give Old Phenom CPUs A Big Run For The Money
  3. 13-Way Low-End GPU Comparison With AMD's AM1 Athlon
  4. ASUS AM1I-A: A Mini-ITX Board For Socketed Kabini APUs
Latest Linux Articles
  1. Ubuntu 14.04 LTS vs. Oracle Linux vs. CentOS vs. openSUSE
  2. How Much Video RAM Is Needed For Catalyst R3 Graphics?
  3. Ubuntu 12.04 LTS vs. 14.04 LTS Cloud Benchmarks
  4. Ubuntu 12.04.4 vs. 13.10 vs. 14.04 LTS Desktop Benchmarks
Latest Linux News
  1. Linux Foundation Shares More Details Of LinuxCon Chicago
  2. Cross-Desktop Collaboration During FreeDesktop Summit 2014
  3. EmScripten Merges Its Speedy "Fastcomp" Backend
  4. Nuclear Dawn Update Has Full Linux Support
  5. Oracle Linux 6.5 vs. Oracle Linux 7.0 Beta Benchmarks
  6. Easter Yields The Linux 3.15-rc2 Kernel Release
  7. The Most Amazing OpenGL Tech Demo In 64kb
  8. Packard Bell LM85 Now Supported By Coreboot
  9. AmazonBasics External USB 2.0 DVD Writer For Linux
  10. TP-LINK TG-3468: A $12 Linux PCI-E Gigabit Network Adapter
  11. Linux 3.15 Lands Some DRM Graphics Driver Fixes
  12. AMD Is Disabling DPM Support For RV770 GPUs
Latest Forum Discussions
  1. ReactOS Working On A Community Windows OS
  2. The GNOME Foundation Is Running Short On Money
  3. Updated and Optimized Ubuntu Free Graphics Drivers
  4. Catalyst 14.3 Beta
  5. Suggestions about how to make a Radeon HD 7790 work decently?
  6. Radeon 8000M problematic on Linux?
  7. Linux Kernel Developers Fed Up With Ridiculous Bugs In Systemd
  8. After Jack Keane, RuseSoft will briing Ankh 3 to Linux through Desura