AMD Releases Optimizing C/C++ Compiler For Ryzen

Written by Michael Larabel in AMD on 16 May 2017 at 09:47 AM EDT. 61 Comments
AMD
Longtime Phoronix readers and AMD Linux enthusiasts probably remember the AMD Open64 compiler for past CPU launches with various compiler optimizations for AMD processors. With Open64 being dead and all the compiler rage these days about LLVM/Clang, AMD has announced the "AMD Optimizing C/C++ Compiler" (AOCC) that's based upon Clang and optimized for Ryzen/Zen processors.

AMD this week has rolled out AOCC 1.0 as their first compiler optimized for Zen. LLVM Clang as well as GCC have offered mainline support for Ryzen via znver1 but AMD hadn't contributed a scheduler model yet for this upstream compiler support. Now they have out AOCC 1.0 for those wanting further optimized Zen binaries.

AOCC 1.0 is focused on Zen/17h processor support and reportedly offers improved vectorization, higher-level optimizer, and better code generation. AOCC also supports Fortran codes via the DragonEgg LLVM plug-in for integration with GCC. These various AMD optimizations are patched atop LLVM Clang 4.0. AMD has also released an AOCC optimized version of the Gold linker.

Download links for this AMD Optimizing C/C++ Compiler can be found via developer.amd.com. I haven't yet tested it but will be doing some fresh Ryzen GCC/Clang/AOCC benchmarks now this week.

The support for DragonEgg for AMD-optimized Fortran is interesting since upstream DragonEgg has basically been unmaintained for a while. This AOCC DragonEgg will also only work with the (now rather older) GCC 4.8.2 compiler.

Hopefully AMD will be able to upstream their relevant AOCC patches to LLVM/Clang in the near future... As of writing I haven't seen a source tree yet of the AOCC changes. With the AOCC binaries, they are still named "clang" for an easy drop-in replacement on Linux systems.
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