VOOZH about

URL: https://www.phoronix.com/news/GCC-15-AArch64-Early-Sched

⇱ GCC 15 Now Enables AArch64 Early Scheduling For -O3/-Ofast Modes - Phoronix


👁 Phoronix

GCC 15 Now Enables AArch64 Early Scheduling For -O3/-Ofast Modes

Written by Michael Larabel in Arm on 7 March 2025 at 10:13 AM EST. 5 Comments
The GCC "-fschedule-insns" option allows for reordering of instructions to eliminate execution stalls when required data is unavailable. This early scheduling option can be beneficial for systems with slow floating point performance or costly memory load instructions. With the upcoming GCC 15 release, AArch64 will be enabling this early scheduling optimization at the -O3 optimization level and higher.

The early scheduling option had been disabled at all optimization levels on AArch64 (and x86) since it can be costly in terms of compile-time overhead. But with the upcoming GCC 15.1 release, this early scheduling is now being enabled for -O3 and higher (-Ofast).

The commit making the change on Thursday explained:
"AArch64: Enable early scheduling for -O3 and higher

Enable the early scheduler on AArch64 for O3/Ofast. This means GCC15 benefits from much faster build times with -O2, but avoids the regressions in lbm which is very sensitive to minor scheduling changes due to long FMA chains."

The change to the GNU Compiler Collection was made by longtime Arm engineer Wilco Dijkstra.

👁 AArch64 Ampere server


The GCC 15 stable compiler release should be out within the next month or two.

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.