The Radeon GCN Backend Is Still Being Worked On For GCC, GCC 9 Deadline Looms
Back in September Code Sourcery / Mentor Graphics posted their new Radeon GCN port for the GNU Compiler Collection (GCC). Two months later this port is still being worked on but not yet ready for mainline.
This Radeon GCN back-end for GCC is being done with a focus on GPU computing with eventually a goal of allowing OpenMP / OpenACC offloading to newer AMD GPUs. At this current stage, single-threaded C and Fortran programs can be built for Radeon GPUs with this compiler but the multi-threading API offloading bits are still coming about. This back-end has been focused on Fiji/Tonga support and newer.
Developer Andrew Stubbs posted today that he expects to have an updated patch-set ready to go within the coming weeks with many improvements having been made since that earlier patch series.
This week does mark the end of feature development for GCC 9 when the code-base will enter "stage three" development. Stage 3 does focus on regression fixes and documentation updates, but it does allow for new compiler ports to be added as long as they don't touch other parts of the compiler. So it's possible we could see at least the initial Radeon GCN code merged still if it's ready to go ahead of January when the fourth stage of development will happen. Should the Radeon code not be ready for GCC 9, it won't premiere until GCC 10 in 2020.
We'll see what ends up coming of this Radeon GCC support. At least the AMDGPU LLVM back-end does continue working out great and for those wanting a GCC-based Radeon stack can try Mentor's CodeBench Lite that is based off the same work as these patches.
This Radeon GCN back-end for GCC is being done with a focus on GPU computing with eventually a goal of allowing OpenMP / OpenACC offloading to newer AMD GPUs. At this current stage, single-threaded C and Fortran programs can be built for Radeon GPUs with this compiler but the multi-threading API offloading bits are still coming about. This back-end has been focused on Fiji/Tonga support and newer.
Developer Andrew Stubbs posted today that he expects to have an updated patch-set ready to go within the coming weeks with many improvements having been made since that earlier patch series.
This week does mark the end of feature development for GCC 9 when the code-base will enter "stage three" development. Stage 3 does focus on regression fixes and documentation updates, but it does allow for new compiler ports to be added as long as they don't touch other parts of the compiler. So it's possible we could see at least the initial Radeon GCN code merged still if it's ready to go ahead of January when the fourth stage of development will happen. Should the Radeon code not be ready for GCC 9, it won't premiere until GCC 10 in 2020.
We'll see what ends up coming of this Radeon GCC support. At least the AMDGPU LLVM back-end does continue working out great and for those wanting a GCC-based Radeon stack can try Mentor's CodeBench Lite that is based off the same work as these patches.
1 Comment