LLVM Clang 16 vs. GCC 13 Compiler Performance On AMD 4th Gen EPYC "Genoa"

Written by Michael Larabel in Software on 30 May 2023 at 11:42 AM EDT. Page 3 of 6. 12 Comments.
simdjson benchmark with settings of Throughput Test: Kostya. Clang 16.0.3 was the fastest.
simdjson benchmark with settings of Throughput Test: TopTweet. Clang 16.0.3 was the fastest.
simdjson benchmark with settings of Throughput Test: LargeRandom. GCC 13.1.1 was the fastest.
simdjson benchmark with settings of Throughput Test: PartialTweets. Clang 16.0.3 was the fastest.
simdjson benchmark with settings of Throughput Test: DistinctUserID. Clang 16.0.3 was the fastest.

Clang was tending to provide the faster simdjson binary for parsing massive amounts of JSON data on the EPYC server.

LZ4 Compression benchmark with settings of Compression Level: 3, Compression Speed. Clang 16.0.3 was the fastest.
LZ4 Compression benchmark with settings of Compression Level: 3, Decompression Speed. GCC 13.1.1 was the fastest.
LZ4 Compression benchmark with settings of Compression Level: 9, Compression Speed. Clang 16.0.3 was the fastest.
LZ4 Compression benchmark with settings of Compression Level: 9, Decompression Speed. Clang 16.0.3 was the fastest.
Zstd Compression benchmark with settings of Compression Level: 12, Decompression Speed. GCC 13.1.1 was the fastest.
Zstd Compression benchmark with settings of Compression Level: 19, Compression Speed. GCC 13.1.1 was the fastest.
Zstd Compression benchmark with settings of Compression Level: 19, Decompression Speed. GCC 13.1.1 was the fastest.
Zstd Compression benchmark with settings of Compression Level: 19, Long Mode, Compression Speed. GCC 13.1.1 was the fastest.
Zstd Compression benchmark with settings of Compression Level: 19, Long Mode, Decompression Speed. Clang 16.0.3 was the fastest.
WebP Image Encode benchmark with settings of Encode Settings: Default. Clang 16.0.3 was the fastest.
WebP Image Encode benchmark with settings of Encode Settings: Quality 100, Lossless. Clang 16.0.3 was the fastest.
WebP Image Encode benchmark with settings of Encode Settings: Quality 100, Highest Compression. Clang 16.0.3 was the fastest.
WebP Image Encode benchmark with settings of Encode Settings: Quality 100, Lossless, Highest Compression. Clang 16.0.3 was the fastest.

Paired with Clang's speedy build times and good reputation for their compiler diagnostics and related tooling, it's not hard to see why more and more organizations are relying on Clang as their preferred compiler.

TSCP benchmark with settings of AI Chess Performance. Clang 16.0.3 was the fastest.
GraphicsMagick benchmark with settings of Operation: Swirl. GCC 13.1.1 was the fastest.
GraphicsMagick benchmark with settings of Operation: Rotate. GCC 13.1.1 was the fastest.
GraphicsMagick benchmark with settings of Operation: Sharpen. Clang 16.0.3 was the fastest.
GraphicsMagick benchmark with settings of Operation: Enhanced. GCC 13.1.1 was the fastest.
GraphicsMagick benchmark with settings of Operation: Noise-Gaussian. GCC 13.1.1 was the fastest.
GraphicsMagick benchmark with settings of Operation: HWB Color Space. GCC 13.1.1 was the fastest.

The GCC compiler did still show some advantages in the OpenMP-threaded GraphicsMagick imaging program.


Related Articles