Experimental Patch Brings Very Primitive AMD Instinct MI300 Support To GCC Compiler
With AMD continuing to be focused on their AMDGPU LLVM compiler back-end for their GPU compiler needs from compute to graphics shaders, the AMD GPU/accelerator hardware support within the GNU Compiler Collection "GCC" has long taken a backseat and left to third-party firms to implement. Posted today was an experimental patch providing very early support for the AMD Instinct MI300 series hardware with the GCC compiler.
Tobias Burnus with BayLibre posted the initial patch for very primitive AMD Instinct MI300 support within the GCC compiler. BayLibre has previously carried out other AMD and GPU-related improvements to GCC. Some of the BayLibre developers were formerly with CodeSourcery / Mentor Graphics and working on the AMD/Radeon support for years... See the prior Mentor Graphics articles on Phoronix for their many contributions.
With this AMD Instinct MI300 support for GCC, it's still very primitive. In fact, it's doing little more than "hello world" type programs. Burnus wrote in today's patch message:
This initial code will likely soon be merged to GCC 16 Git. While it's neat that Instinct MI300 support is coming to GCC, in the near-term it's likely to not be too practical given the current state and AMD's primary focus on their LLVM-based stack.
Update: Tobias emailed into Phoronix with additional context beyond his comment above:
Tobias Burnus with BayLibre posted the initial patch for very primitive AMD Instinct MI300 support within the GCC compiler. BayLibre has previously carried out other AMD and GPU-related improvements to GCC. Some of the BayLibre developers were formerly with CodeSourcery / Mentor Graphics and working on the AMD/Radeon support for years... See the prior Mentor Graphics articles on Phoronix for their many contributions.
With this AMD Instinct MI300 support for GCC, it's still very primitive. In fact, it's doing little more than "hello world" type programs. Burnus wrote in today's patch message:
"This add experimental support for AMD Instinct MI300. It has been tested to support hello world, but not yet much beyond (to come)."
This initial code will likely soon be merged to GCC 16 Git. While it's neat that Instinct MI300 support is coming to GCC, in the near-term it's likely to not be too practical given the current state and AMD's primary focus on their LLVM-based stack.
Update: Tobias emailed into Phoronix with additional context beyond his comment above:
"The patch is supposed to add full support for MI300A. We currently don't have direct access to an MI300A and a collaborator got such a system recently and quickly tried whether a simple OpenMP offload code worked with those changes (it did). The plan is eventually run the full GCC testsuite and some other code, which might just work or find issues."
