GCC vs. Clang Compiler Performance On Intel Meteor Lake

Written by Michael Larabel in Software on 4 January 2024 at 11:00 AM EST. Page 2 of 5. 48 Comments.
QuantLib benchmark with settings of Configuration: Multi-Threaded. Clang 17 was the fastest.
QuantLib benchmark with settings of Configuration: Single-Threaded. Clang 17 was the fastest.

Similar to what was seen with the high-end HP Z6 G5 A workstation, the Intel Meteor Lake testing also saw much better performance with Clang-generated binaries for the QuantLib open-source quantitative finance software. Quite nice gains from simply switching out the compiler used.

LeelaChessZero benchmark with settings of Backend: Eigen. Clang 17 was the fastest.
miniBUDE benchmark with settings of Implementation: OpenMP, Input Deck: BM2. Clang 17 was the fastest.
miniBUDE benchmark with settings of Implementation: OpenMP, Input Deck: BM2. Clang 17 was the fastest.
SMHasher benchmark with settings of Hash: SHA3-256. Clang 17 was the fastest.

There were also additional nice boosts to the performance from Clang 17 over GCC 13.2 on Meteor Lake for workloads like the LC0 deep learning chess software, miniBUDE HPC, and the SMHasher crypto test.

Timed MrBayes Analysis benchmark with settings of Primate Phylogeny Analysis. Clang 17 was the fastest.
LAMMPS Molecular Dynamics Simulator benchmark with settings of Model: 20k Atoms. GCC 13 was the fastest.
Xmrig benchmark with settings of Variant: KawPow, Hash Count: 1M. GCC 13 was the fastest.
Xmrig benchmark with settings of Variant: Monero, Hash Count: 1M. Clang 17 was the fastest.

Like on AArch64 Linux and on AMD x86_64, there continues to be very healthy competition between these open-source compilers for which offers the best performance of generated binaries on Intel x86_64.

LZ4 Compression benchmark with settings of Compression Level: 9, Compression Speed. GCC 13 was the fastest.
Zstd Compression benchmark with settings of Compression Level: 12, Compression Speed. Clang 17 was the fastest.
Zstd Compression benchmark with settings of Compression Level: 19, Compression Speed. Clang 17 was the fastest.
Zstd Compression benchmark with settings of Compression Level: 19, Decompression Speed. Clang 17 was the fastest.

Ultimately it comes down to what workloads are most important to you and profiling those for helping to decide between compilers to use, as well as additional factors like the compiler diagnostics and other features and support.


Related Articles