AMD GCN3 / Fiji Support Being Retired From The GCC Compiler
The AMD GCN3 (GFX8) support and in particular the Fiji GPU support is being retired from the GNU Compiler Collection (GCC). The Fiji GPU support in the GCC compiler was already deprecated in part due to the LLVM compiler having already removed Fiji support months ago and the AMD ROCm compute driver having broken GCN3 / Fiji support for years.
Andrew Stubbs of Bay Libre explained of the Fiji GPU support removal in patches posted today:
Without the ROCm driver support working for these aging GPUs, there isn't much left use in keeping the GCC back-end bits in place. The AMDGCN GCC support is primarily geared for OpenMP and OpenACC device offloading to AMD GPUs. It was only in GCC 10 back in 2020 that Radeon OpenMP/OpenACC offloading was introduced with initial Fiji and Vega targets.
The other patch goes on to remove all the remaining AMD GCN 3rd generation code since besides Fiji there was no other GCN3 support in GCC:
This removal will be found with the GCC 15 compiler releasing in the early months of 2025.
Andrew Stubbs of Bay Libre explained of the Fiji GPU support removal in patches posted today:
The gfx803 "Fiji" device was deprecated in GCC 14, removed from LLVM 18, and hasn't worked properly with the drivers since about ROCm 4.
This patch removes the device from GCC options and documentation, and removes the direct mentions from the internals.
The TARGET_GCN3 support in the back-end is now unused and can be removed (in a follow-up patch).
Without the ROCm driver support working for these aging GPUs, there isn't much left use in keeping the GCC back-end bits in place. The AMDGCN GCC support is primarily geared for OpenMP and OpenACC device offloading to AMD GPUs. It was only in GCC 10 back in 2020 that Radeon OpenMP/OpenACC offloading was introduced with initial Fiji and Vega targets.
The other patch goes on to remove all the remaining AMD GCN 3rd generation code since besides Fiji there was no other GCN3 support in GCC:
The only GCN3 ISA device was remove (Fiji, gfx803) so all the GCN3-specific code and features can be removed from the back-end.
This removal will be found with the GCC 15 compiler releasing in the early months of 2025.
24 Comments