More Details On The AMD GCN Back-End For GCC That's Expected To Merge For GCC 9

Written by Michael Larabel in AMD on 11 September 2018 at 07:25 AM EDT. 16 Comments
AMD
Last week I reported on Code Sourcery / Mentor Graphics posting their new AMD GCN port to the GNU Compiler Collection (GCC). This GPU back-end for the widely-used GCC compiler is hoped for merging ahead of the GCC 9 stable release expected in early 2019. At this past weekend's GNU Tools Cauldron 2018 conference was a briefing by Mentor Graphics on undertaking funded by AMD.

Andrew Stubbs who posted those latest AMD GCN patches last week for GCC was in attendance at the Cauldron in Manchester (UK) to talk about their AMD GPU back-end work for the GNU compiler toolchain. Among the highlights are:

- AMD has indeed been funding Mentor Graphics to create this new GCC port... It was pretty much assumed, but not entirely clear with AMD and SUSE being long-time partners and SUSE having originally started working on the GCN back-end in 2016. But it turns out AMD ended up hiring Mentor to work on this code since 2017 while using the SUSE code as a starting point.

- One of the explicit requirements by AMD is for this GCN back-end to handle Fortran code (GFortran) with the OpenACC and OpenMP parallel programming interfaces.

- A binary release of this AMD GCN GCC port based on GCC 7 and with only supporting C++ OpenMP/OpenACC offloading is currently available within Sourcery CodeBench.

- Mentor will be making a new binary release in November based on GCC 8 and with various OpenACC updates, expanded vector support, and other backend-specific improvements.

- They don't yet have the AMD GCN code written for Binutils coverage so for now they are relying upon LLVM's assembler and linker support.

- They indeed are hoping to get this back-end merged for GCC 9.

- They still need to finish more C++ functionality, sub-word vector operations, register sharing to support more than four threads per compute unit, and various clean-ups / optimizations.

A lot more technical details on this AMD back-end for GCC are available via this slide deck (PDF) from the GNU Tools Cauldron 2018.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week