AMD AOCC 1.1 Shows Compiler Improvements vs. GCC vs. Clang

Written by Michael Larabel in Software on 30 January 2018 at 02:55 PM EST. Page 3 of 5. 13 Comments.
AMD AOCC 1.1 Compiler GCC LLVM Clang Benchmarking

With the GNU MPC multi-precision benchmark, AMD's AOCC compiler was slightly faster than the tested upstream LLVM/Clang releases and allowed it to perform in line with GCC 7.2/8.0.1. (Note the compiler CFLAGS/CXXFLAGS flags were maintained the same throughout all of the benchmarks, in some graphs there were some slight differences due to AOCC still defaulting to GNU99.)

AMD AOCC 1.1 Compiler GCC LLVM Clang Benchmarking
AMD AOCC 1.1 Compiler GCC LLVM Clang Benchmarking

With the GraphicsMagick OpenMP-threaded image manipulation tests, AOCC 1.1 was faster than the tested Clang compilers but not quite as fast as GCC. But AOCC performing well here is good to see as generally Clang's OpenMP performance still lags behind the GNU Compiler Collection.

AMD AOCC 1.1 Compiler GCC LLVM Clang Benchmarking

Unfortunately in the AVX-heavy Himeno pressure solver benchmark, AOCC 1.1 performance is notably regressed compared to upstream Clang 6.0.

AMD AOCC 1.1 Compiler GCC LLVM Clang Benchmarking

When it came to the compile times of AOCC 1.1, with building the Apache web server it was right behind upstream Clang. Seeing it slower wouldn't be too surprising since AOCC is said to apply more compiler optimizations than vanilla Clang, thus taking more time to build.

AMD AOCC 1.1 Compiler GCC LLVM Clang Benchmarking

Meanwhile in the timed PHP compilation test, AOCC 1.1 ended up being much slower than LLVM Clang and was in line with the GCC build performance.

Related Articles