The latest update to AMD Optimizing C/C++ Compiler v 4.0 'AOCC', offers increased performance across Zen 4 Ryzen & EPYC CPUs. The update was launched alongside the 4th Gen EPYC Genoa CPUs last week.
Benchmarks comparing the AMD AOCC 4.0 and LLVM/Clang compiler library are put to the test on Zen 4 powered Ryzen & EPYC CPUs
The new AOCC 4.0 presents the Zen 4 "zenver4" optimizations and further support for the latest architecture. AOCC 4.0 is not open-source. It is a derivative of the LLVM/Clang compiler library and is considered exclusive to AMD Zen 4.
Michael Larabel of Phoronix compared the two compiler libraries with his AMD Ryzen 9 7950X processor to determine the performance differences between the two libraries. His motherboard was the ASUS ROG Crosshair X670E Hero with 32GB of memory. The environment that he used was Ubuntu 22.10. He does mention that once the GCC 13 is available in March or April 2023, he will revisit this test to determine what will be best for Linux users for performance.
AMD AOCC 4.0 Benchmarks (Image Credits: Phoronix):
AOCC 4.0 showed significant gains in several benchmarks, albeit mild. The tests where the AOCC 4.0 produced slightly better results were in the:
- LeelaChessZero 0.28 (both BLAS and Eigen backends)
- Xmrig 6.18.1
- Zstd Compression 1.5.0 (both compressed and decompressed)
- WebP Image Encode 1.2.4 (highest compression and standard and lossless modes)
- GraphicsMagick 1.3.38 (sharpened and enhanced)
- Kvazaar 2.1 (4K resolution with both "very fast" and "ultra-fast" presets)
- SVT-AV1 1.2 (4K resolution)
- SVT-HEVC 1.5.0 (4K resolution)
- x265 3.4 (4K resolution)
- libavif avifenc 0.11
- Liquid-DSP 2021.01.31 (16 and 32 threads)
- ASTC Encoder 4.0 (medium and thorough presets)
Larabel notes that there was a majority of minimally increased performance through the testing, with only a few having a significant gain in the benchmarks. He also shares a statement from AMD:
...additional GCC 13 optimizatiohn proposals for the Zen4 archjitecture are underway as is our common practice for each Zen generation.
The author is also slightly surprised at AMD's behavior when working on the AOCC 4.0 compiler. The company chose to hold off the release of the AOCC 4.0 until after the official launch of new EPYC processors. He feels that premature optimization and support would have faired better for the company and Linux users with the support. Once better support is introduced in the series, he plans to revisit the benchmarks to see if the AOCC 4.0 compiler is still the choice over LLVM/Clang support.
News Source: Phoronix