HSA IL Front-End Proposed For GCC

Written by Michael Larabel in GNU on 16 May 2016 at 07:28 PM EDT. 5 Comments
HSA stakeholders are hoping to mainline their HSA IL front-end for the GCC compiler stack. In particular, BRIG, the binary form of the Heterogeneous System Architecture Intermediate Language.

The HSA Foundation has been maintaining their repository with the HSA IL front-end on top of GCC 4.9 while now the developers are hoping to see this code mainlined. The development appears to be done primarily by Parmance, a company specializing in parallel performance engineering.

Pekka Jääskeläinen explained of this HSA front-end to GCC, "This patch set adds a BRIG (HSAIL) frontend. It can be used as a core for an HSAIL finalizer implementation for processors with gcc backends. It is a bit unusual frontend as the consumed format is a binary representation. The textual HSAIL can be compiled to it with a separate assembler. The frontend has been mostly tested with the HSA PRM conformance suite which it now passes. The accompanied GENERIC-scanning test suite is supposed to be only a smoke test. libhsail-rt implements HSAIL specific builtins and includes a simple runtime that implements SPMD execution via either Pth-based fibers or loops to execute multiple work-item work groups without SPMD/SIMD-default hardware."

This GCC "BRIG" front-end for HSA's intermediate language adds over 42,000 lines of code to the GNU Compiler Collection tree. Hopefully this latest GCC HSA feature will land well in time for next year's release of GCC 7, which should be the case considering the amount of time to the next major release. This work is about GCC consuming HSA IL on the front-end while found in GCC 6 was support on the back-end for generating HSA IL from OpenMP constructs when configured for the HSA offload target. A GCC6 libgomp plugin then runs the HSA GPU kernels on supported hardware via the HSA runtime.

Those wanting to pour through the code now can find it on gcc-patches.
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