AMD Optimizing C/C++ Compiler
The AMD Optimizing C/C++ Compiler (AOCC) is an optimizing C/C++ and Fortran compiler suite from AMD targeting 32-bit and 64-bit Linux platforms.[1][2] It is a proprietary fork of LLVM + Clang with various additional patches to improve performance for AMD's Zen microarchitecture in Epyc and Ryzen microprocessors.[1][3]
AOCC version | Date | LLVM version | Notes |
---|---|---|---|
1.0.0 | May 2017 | 6.0 | Uses DragonEgg with GCC 4.8.2 for Fortran.[1] |
1.1.0 | December 2017 | 6.0 | |
1.2.0 | April 2018 | 6.0 | Introduction of the Flang Fortan frontend. |
1.2.1 | July 2018 | 6.0 | Bugfix release. |
1.3.0 | December 2018 | 7.0 | Last version to use DragonEgg. |
2.0.0 | August 2019 | 8.0 | Support for 2nd generation Zen CPUs.[5] |
2.1.0 | November 2019 | 9.0 | [6] |
2.2.0 | June 2020 | 10.0 | |
2.3.0 | December 2020 | 11.0 | Introduction of OpenMP debugger |
3.0.0 | March 2021 | 12.0 | Support for 3rd generation Zen CPUs |
3.1.0 | July 2021 | 12.0 | |
3.2.0 | December 2021 | 13.0 | |
4.0.0 | November 2022 | 14.0 | Support for 4th generation Zen CPUs |
4.1.0 | August 2023 | 16.0 |
Developer(s) | Advanced Micro Devices |
---|---|
Initial release | 2017 |
Stable release | 4.1.0
/ August 4, 2023 |
Operating system | Linux |
Type | Compiler |
License | Freeware |
Website | developer |
In a May 2017 benchmark comparing AOCC v1.0 to Clang 4 and 5, and GCC 6 through 8, Phoronix found AOCC provided marginal improvement over Clang 4.0 in several benchmarks and no difference in others.[3] Compilation time generally increased relative to Clang 4.0. Some benchmarks found some versions of GCC had better performance than some versions of Clang (AOCC included), and vice versa. In August 2019 Phoronix again benchmarked AOCC, now AOCC 2.0 against Clang 9 and GCC 9.1 and 10.0.[7]
Along with the compiler, AMD offers the AMD Optimizing CPU Libraries (AOCL), a set of numerical libraries that is roughly similar to Intel's Math Kernel Library and includes AMD Math Library (LibM), AMD Random Number Generator Library, AMD Secure RNG Library, AOCL-Sparse, BLIS, FFTW, libFLAME, and ScaLAPACK that are tuned for the Zen processors.
AMD also offers AMD µProf, a performance analysis tool similar to Intel VTune.
See also
References
- "AOCC User guide" (PDF). AMD.
- "AMD Releases Optimizing C/C++ Compiler For Ryzen - Phoronix". www.phoronix.com.
- "Benchmarking AMD's New AOCC Compiler For Ryzen - Phoronix". www.phoronix.com.
- "AOCC Archive Section". AMD.
- "AOCC 2.0 Install Guide" (PDF). developer.amd.com. Retrieved 2020-02-19.
- "AOCC 2.1 Install Guide" (PDF). developer.amd.com. Retrieved 2020-02-19.
- "GCC vs. LLVM Clang vs. AOCC Compiler Benchmarks On The AMD EPYC 7742 2P Linux Server - Phoronix". www.phoronix.com. Retrieved 2020-02-19.