AMD Optimizing C/C++ Compiler 1.3 Brings More Zen Tuning

Written by Michael Larabel in AMD on 17 November 2018 at 06:27 AM EST. 2 Comments
AMD
Earlier this month AMD quietly released a new version of their Optimizing C/C++ compiler in the form of AOCC 1.3. This new compiler release has more Zen tuning to try to squeeze even more performance out of Ryzen/EPYC systems when using their LLVM-based compiler.

The AMD Optimizing C/C++ Compiler remains AMD's high performance compiler for Zen compared to the earlier AMD Open64 Compiler up through the Bulldozer days. AOCC is based on LLVM Clang with various patches added in. Fortunately, with time at least a lot of the AOCC patches do appear to work their way into upstream LLVM Clang. AOCC also has experimental Fortran language support using the "Flang" front-end that isn't as nearly mature as Clang.

With the AMD AOCC 1.3.0 release there is more Zen tuning, enhanced loop optimizations, better vectorization and code generation, continued work on Flang as well as the DragonEgg GCC plug-in, optimizing AMD Math library, the LLVM Linker is now used by default, and their code has been re-based to LLVM/Clang 7.0.

My benchmarking of the AOCC has been mixed. When AMD first introduced AOCC there wasn't much of a difference compared to the upstream open-source LLVM Clang compiler, but with succeeding releases it has deviated a bit more and for at least some HPC/workstation workloads building with AOCC does offer performance advantages. I'll be running some AOCC 1.3 compiler benchmarks shortly on Threadripper and EPYC to see how this new release performs compared to the Clang and GCC compilers.

Those wanting to try out the AOCC 1.3 compiler release can find it at developer.amd.com.
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