GCC 8.0 vs. LLVM Clang 6.0 On AMD EPYC

Written by Michael Larabel in Software on 13 January 2018 at 08:20 AM EST. Page 2 of 3. 10 Comments.
GCC 8.0 vs. Clang 6.0 AMD EPYC Tuning Comparison

Over the years, the LLVM Clang C/C++ compiler performance has been optimized so it's to the point of competing neck-and-neck with GCC in some workloads. With PolyBench-C, GCC 8.0 maintains a slight lead when it comes to generic x86-64 generated binaries but actually regresses with the znver1 targeting while Clang performed about the same.

GCC 8.0 vs. Clang 6.0 AMD EPYC Tuning Comparison

With the FFTW benchmark, znver1 targeting benefits both compiler stacks but GCC 8.0 is faster and also improves more compared to generic x86-64.

GCC 8.0 vs. Clang 6.0 AMD EPYC Tuning Comparison

The HMMer molecular biology test also was made faster by znver1 optimizations and finishes with Clang slightly ahead of GCC.

GCC 8.0 vs. Clang 6.0 AMD EPYC Tuning Comparison

The SciMark2 composite score with default x86-64 binaries sided with GCC 8.0 but with znver1, Clang 6.0 jumps ahead to beating out the znver1-optimized GCC 8 binaries.

GCC 8.0 vs. Clang 6.0 AMD EPYC Tuning Comparison
GCC 8.0 vs. Clang 6.0 AMD EPYC Tuning Comparison
GCC 8.0 vs. Clang 6.0 AMD EPYC Tuning Comparison

Znver1 targeting really helps out with SciMark2.


Related Articles