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 Radeon HD 7970 Open-Source Linux Update

AMD

Published on 23 December 2011 03:18 PM EST
Written by Michael Larabel in AMD
1 Comment

AMD launched the Radeon HD 7970 graphics card yesterday as the first built upon their GCN (Graphics Core Next) architecture. Besides the initial Phoronix coverage of this first "Southern Islands" product, there's some new open-source Linux driver information today.

Yesterday's article summarizes the current level of Linux support for this new fastest single-GPU graphics card: the AMD Catalyst binary driver support is there but there's no open-source driver support available. There's Radeon HD 7000 series open-source support being worked on by AMD, but there's nothing public at the moment and it will likely be several months before there is usable and reliable open-source support (DRM/KMS and Gallium3D).

While AMD didn't send out a Radeon HD 7970 "Tahiti" graphics card sample to Phoronix for launch-day nor have they or any of their AIB partners contacted Phoronix yet about sending over a Radeon HD 7970 in order to provide Linux support and performance information to the Linux community, we do have one advantage: John Bridgman. Fortunately, the head of AMD's open-source graphics driver strategy is also the number-one poster in the Phoronix Forums -- he has more than 6,000 posts!

He provided bits of Graphics Core Next Linux information prior to launch, but now that there's hardware out there and plenty of public information, Bridgman can provide greater comments. So even without hardware in hand or AMD's PR department caring much about Linux coverage, we at least have Bridgman to fill in some of the gaps. In the day since the Radeon HD 7970 unveiling, there's been new open-source driver information learned from the Canadian hunter.

His first comment after the HD 7970 launch was just confirming information about their LLVM Gallium3D driver back-end: "the plan is for the new compiler code to go into the Gallium3D driver and process GCN graphics shaders (after adding GCN instruction generation, of course) along with compute for all architectures, while pre-GCN graphics shaders will go through the existing r600g compiler/translator."

In another comment he also provided an update about the open-source UVD support status... But there basically isn't anything new. Him and his colleagues still need to examine the Unified Video Decoder more closely and the latest GCN revisions to see if they can provide any open-source video encode/decode using this engine. The show-stopping problem is that they haven't been able to open up any code or documentation for this video engine since it could potentially compromise the Digital Rights Management abilities on other platforms, so for now video decode is limited to using shaders under Gallium3D with the VDPAU/VA-API/XvMC state trackers.

John expects to take another stab at looking at UVD in 2012. There's long been talk of future generations of Radeon graphics processors having a more modularized UVD engine so that part of it could be opened if the DRM component was decoupled from it.

In terms of the PowerTune support with the Radeon HD 7000 series, John says, "I don't think we have looked at PowerTune specifically; my guess is that the first chance to do that will be a few months from now. There are some more fundamental power management improvements I would like to get out first, and they will probably be a pre-requisite for PowerTune anyways." Power management is currently an open-source sore spot.

In this other comment, Bridgman talks more about the rendering and compute paths of R600+ and Southern Islands in terms of the IR and conversions. In terms of the GCN workflow:
For GCN graphics the Gallium3D pipe driver will receive TGSI shader programs from Mesa, use "part 1" of the newly released code to convert TGSI to LLVM IR, then use "part 2" to generate GCN GPU instructions from the LLVM IR

For GCN compute the Gallium3D pipe driver will receive LLVM IR kernel programs from clover (or other compute front ends) then use "part 2" of the newly released code to generate GCN GPU instructions from the LLVM IR

In yet another post by John Bridgman is more information about the GCN compiler in Catalyst, IRs, and other technical details for Phoronix enthusiasts. It's one of John's lengthier posts, but it's worth a read if you're into the low-level graphics/compute details.

In a recent post he adds even more details and addresses various Phoronix reader questions. An interesting detail from that post is that he talks of getting the invasive kernel DRM driver changes into the Linux 3.3 kernel merge window. This would mean AMD would need to get the code published in the next few weeks and to quickly make it through public review. The invasive changes are for handling multiple rings, memory management changes, and other low-level areas.

Bridgman doesn't know when the actual GCN enablement code will be published for mainline kernel integration, but since that's all about new hardware support and shouldn't affect existing Radeon GPUs, that could be merged after the 3.3 merge window is closed. However, when that code is ready and clears legal review is another story. Most Radeon HD 7000 series owners though won't actually see a good "out of the box" experience in their distributions until H2'2012 anyways due to varying release schedules, most distributions not updating their graphics stack post-release, etc. Basically, it will still be a while.

In his last post at the time of publishing this article, he talks about IOMMU and the Southern Islands hardware accessing the main system RAM.

Thanks, as always, John for the continued feedback and engagement with the Linux community via Phoronix. It should certainly be an interesting 2012 with the emergence of the Southern Islands open-source driver support and hopefully seeing compute support working on Evergreen/Northern-Islands/Southern-Islands via Gallium3D Clover. Ideally we will also see the Radeon driver catch-up in supporting OpenGL 3.0+, power management, and other currently missing open-source features.

Lastly, hopefully AMD or one of their AIB partners will be sending out a Radeon HD 7970 soon for some Catalyst Linux driver tests and the open-source stack... In the meantime, if you wish to find out more information, drop by the forums to read the words of Bridgman and other open-source GPU driver developers.

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. CompuLab Intense-PC2: An Excellent, Fanless, Mini PC Powered By Intel's i7 Haswell
  2. From The Atom 330 To Haswell ULT: Intel Linux Performance Benchmarks
  3. AMD Radeon R9 285 Tonga Performance On Linux
  4. Apotop Wi-Copy
Latest Linux Articles
  1. AMD Moves Forward With Unified Linux Driver Strategy, New Kernel Driver
  2. MSI: Update Your BIOS From The Linux Desktop
  3. NVIDIA vs. AMD 2D Linux Drivers: Catalyst Is Getting Quite Good At 2D
  4. 15-Way GPU Comparison With Mesa 10.3 + Linux 3.17
Latest Linux News
  1. GParted 0.20 Improves Btrfs Support
  2. EXT4 In Linux 3.18 Has Clean-ups, Bug Fixes
  3. Emacs 24.4 Has Built-In Web Browser, Improved Multi-Monitor Support
  4. NVIDIA's NVPTX Support For GCC Is Close To Being Merged
  5. KDE's KWin On Wayland Begins Using Libinput
  6. Khronos Releases OpenVX 1.0 Specification
  7. Linux Kernel Working Towards GNU11/C11 Compatibility
  8. Ubuntu 15.04 Is Codenamed After A Monkey: Vivid Vervet
  9. Following GCC, Clang Looks To Default To C11
  10. Users/Developers Threatening Fork Of Debian GNU/Linux
Latest Forum Discussions
  1. Users/Developers Threatening Fork Of Debian GNU/Linux
  2. HOPE: The Ease Of Python With The Speed Of C++
  3. Bye bye BSD, Hello Linux: A Sys Admin's Story
  4. NVIDIA Presents Its Driver Plans To Support Mir/Wayland & KMS On Linux
  5. AMD Is Restructuring Again, Losing 7% Of Employees
  6. Open-Source AMD Fusion E-350 Support Takes A Dive
  7. Upgrade to Kaveri, very slow VDPAU performance
  8. ChromeOS Drops Support For EXT2/EXT3/EXT4 File-Systems