AMD EPYC Rome GCC / LLVM / AOCC Compiler Benchmarks

AMD AOCC 2.0, GCC, LLVM Clang compiler benchmarks on EPYC 7742. Tests by Michael Larabel for a future article.

HTML result view exported from: https://openbenchmarking.org/result/1908094-AS-AOCC20EPY01&gru&sor.

AMD EPYC Rome GCC / LLVM / AOCC Compiler BenchmarksProcessorMotherboardChipsetMemoryDiskGraphicsMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverCompilerFile-SystemScreen ResolutionGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.02 x AMD EPYC 7742 64-Core @ 2.25GHz (128 Cores / 256 Threads)AMD DAYTONA_X (RDY1001C BIOS)AMD Device 1480516096MB280GB INTEL SSDPED1D280GA + 6 x 3841GB Micron_9300_MTFDHAL3T8TDP + 256GB Micron_1100_MTFDASPEEDVE2282 x Mellanox MT27710Ubuntu 19.045.2.0-050200rc7-generic (x86_64) 20190630GNOME Shell 3.32.1X Server 1.20.4modesetting 1.20.4GCC 9.1.0ext41920x1080GCC 10.0.0 20190804Clang 9.0.0-svn364739-1~exp1+0~20190701101552.184~1.gbp124358Clang 8.0.0OpenBenchmarking.orgEnvironment Details- CXXFLAGS=-O3-march=znver2 CFLAGS=-O3-march=znver2Compiler Details- GCC 9.1.0: --disable-multilib --enable-checking=release- GCC 10.0 Git: --disable-multilib --enable-checking=release- AOCC 2.0: Optimized build with assertions; Default target: x86_64-unknown-linux-gnu; Host CPU: znver1Processor Details- Scaling Governor: acpi-cpufreq ondemandPython Details- Python 2.7.16 + Python 3.7.3Security Details- l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional IBRS_FW STIBP: conditional RSB filling

AMD EPYC Rome GCC / LLVM / AOCC Compiler Benchmarkssvt-av1: 1080p 8-bit YUV To AV1 Video Encodesvt-hevc: 1080p 8-bit YUV To HEVC Video Encodesvt-vp9: 1080p 8-bit YUV To VP9 Video Encodex264: H.264 Video Encodingx265: H.265 1080p Video Encodinghpcg: graphics-magick: Rotategraphics-magick: Resizingcoremark: CoreMark Size 666 - Iterations Per Secondtjbench: Decompression Throughputfftw: Stock - 2D FFT Size 2048fftw: Stock - 2D FFT Size 4096scimark2: Compositescimark2: Monte Carloscimark2: Fast Fourier Transformscimark2: Sparse Matrix Multiplyscimark2: Dense LU Matrix Factorizationscimark2: Jacobi Successive Over-Relaxationtscp: AI Chess Performancejohn-the-ripper: Blowfishapache: Static Web Page Servingc-ray: Total Time - 4K, 16 Rays Per Pixelaobench: 2048 x 2048 - Total Timedav1d: Summer Nature 4Kdav1d: Summer Nature 1080pcpp-perf-bench: Atolcpp-perf-bench: Ctypecpp-perf-bench: Math Librarycpp-perf-bench: Rand Numberscpp-perf-bench: Stepanov Vectorcpp-perf-bench: Function Objectscpp-perf-bench: Stepanov AbstractionGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.0101.07343.29277.45153.3144.540.362041023868113.71175.167381.006327.202834.06612.17203.682741.978811.171801.31107281214830224915.195.7236.7711.524.7574.3641.66343.451599.0799.2118.9336.66100.44344.04283.63152.4344.730.362021023825301.45175.487288.806289.302828.01610.98202.712763.508762.751800.11104077514854224096.605.8235.3311.164.7774.3239.33333.851627.9997.7019.0136.52102.78337.75274.55153.9545.370.352371193024508.81174.136627.775842.732880.56621.05224.523382.938518.521655.77114937018765224594.669.1941.7511.564.8674.1036.74331.021892.4685.8918.8233.44157.1845.570.332051203284059.92175.966462.335593.442730.13605.88178.572736.948473.111656.18109368218714024163.319.0137.0211.144.7774.3837.81330.411894.0289.7318.9434.10OpenBenchmarking.org

SVT-AV1

1080p 8-bit YUV To AV1 Video Encode

OpenBenchmarking.orgFrames Per Second, More Is BetterSVT-AV1 0.51080p 8-bit YUV To AV1 Video EncodeLLVM Clang 9.0 SVNGCC 9.1.0GCC 10.0 Git20406080100SE +/- 0.32, N = 3SE +/- 1.25, N = 5SE +/- 0.16, N = 3102.78101.07100.441. (CXX) g++ options: -O3 -march=znver2 -pie -lpthread -lm

SVT-HEVC

1080p 8-bit YUV To HEVC Video Encode

OpenBenchmarking.orgFrames Per Second, More Is BetterSVT-HEVC 2019-02-031080p 8-bit YUV To HEVC Video EncodeGCC 10.0 GitGCC 9.1.0LLVM Clang 9.0 SVN70140210280350SE +/- 3.15, N = 10SE +/- 4.37, N = 3SE +/- 4.13, N = 3344.04343.29337.75-fPIE -fPIC -O2 -flto -fvisibility=hidden -march=native-fPIE -fPIC -O2 -flto -fvisibility=hidden -march=native1. (CC) gcc options: -O3 -march=znver2 -pie -rdynamic -lpthread -lrt

SVT-VP9

1080p 8-bit YUV To VP9 Video Encode

OpenBenchmarking.orgFrames Per Second, More Is BetterSVT-VP9 2019-02-171080p 8-bit YUV To VP9 Video EncodeGCC 10.0 GitGCC 9.1.0LLVM Clang 9.0 SVN60120180240300SE +/- 3.30, N = 15SE +/- 4.48, N = 3SE +/- 3.16, N = 3283.63277.45274.55-fPIE -fPIC -O2 -flto -fvisibility=hidden -mavx-fPIE -fPIC -O2 -flto -fvisibility=hidden -mavx1. (CC) gcc options: -O3 -march=znver2 -pie -rdynamic -lpthread -lrt -lm

x264

H.264 Video Encoding

OpenBenchmarking.orgFrames Per Second, More Is Betterx264 2018-09-25H.264 Video EncodingAOCC 2.0LLVM Clang 9.0 SVNGCC 9.1.0GCC 10.0 Git306090120150SE +/- 2.65, N = 3SE +/- 0.48, N = 3SE +/- 0.91, N = 3SE +/- 0.41, N = 3157.18153.95153.31152.43-mstack-alignment=64-mstack-alignment=641. (CC) gcc options: -ldl -lavformat -lavcodec -lavutil -lswscale -m64 -lm -lpthread -O3 -ffast-math -march=znver2 -std=gnu99 -fPIC -fomit-frame-pointer -fno-tree-vectorize

x265

H.265 1080p Video Encoding

OpenBenchmarking.orgFrames Per Second, More Is Betterx265 3.0H.265 1080p Video EncodingAOCC 2.0LLVM Clang 9.0 SVNGCC 10.0 GitGCC 9.1.01020304050SE +/- 0.15, N = 3SE +/- 0.15, N = 3SE +/- 0.21, N = 3SE +/- 0.11, N = 345.5745.3744.7344.541. (CXX) g++ options: -O3 -march=znver2 -rdynamic -lpthread -lrt -ldl -lnuma

High Performance Conjugate Gradient

OpenBenchmarking.orgGFLOP/s, More Is BetterHigh Performance Conjugate Gradient 3.0GCC 10.0 GitGCC 9.1.0LLVM Clang 9.0 SVNAOCC 2.00.0810.1620.2430.3240.405SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 12SE +/- 0.01, N = 120.360.360.350.33

GraphicsMagick

Operation: Rotate

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Operation: RotateLLVM Clang 9.0 SVNAOCC 2.0GCC 9.1.0GCC 10.0 Git50100150200250SE +/- 1.15, N = 3237205204202-lomp-lomp-ldl-ldl1. (CC) gcc options: -fopenmp -O3 -march=znver2 -pthread -ljbig -lwebp -lwebpmux -ltiff -ljpeg -lXext -lSM -lICE -lX11 -llzma -lbz2 -lz -lm -lpthread

GraphicsMagick

Operation: Resizing

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Operation: ResizingAOCC 2.0LLVM Clang 9.0 SVNGCC 10.0 GitGCC 9.1.0306090120150SE +/- 2.59, N = 12SE +/- 1.53, N = 3SE +/- 0.58, N = 3120119102102-lomp-lomp-ldl-ldl1. (CC) gcc options: -fopenmp -O3 -march=znver2 -pthread -ljbig -lwebp -lwebpmux -ltiff -ljpeg -lXext -lSM -lICE -lX11 -llzma -lbz2 -lz -lm -lpthread

Coremark

CoreMark Size 666 - Iterations Per Second

OpenBenchmarking.orgIterations/Sec, More Is BetterCoremark 1.0CoreMark Size 666 - Iterations Per SecondGCC 9.1.0GCC 10.0 GitAOCC 2.0LLVM Clang 9.0 SVN800K1600K2400K3200K4000KSE +/- 60538.32, N = 3SE +/- 29615.82, N = 3SE +/- 40813.96, N = 3SE +/- 32092.57, N = 33868113.713825301.453284059.923024508.811. (CC) gcc options: -O2 -O3 -march=znver2 -lrt" -lrt

libjpeg-turbo tjbench

Test: Decompression Throughput

OpenBenchmarking.orgMegapixels/sec, More Is Betterlibjpeg-turbo tjbench 2.0.2Test: Decompression ThroughputAOCC 2.0GCC 10.0 GitGCC 9.1.0LLVM Clang 9.0 SVN4080120160200SE +/- 0.02, N = 3SE +/- 0.03, N = 3SE +/- 0.02, N = 3SE +/- 0.16, N = 3175.96175.48175.16174.131. (CC) gcc options: -O3 -march=znver2 -rdynamic

FFTW

Build: Stock - Size: 2D FFT Size 2048

OpenBenchmarking.orgMflops, More Is BetterFFTW 3.3.6Build: Stock - Size: 2D FFT Size 2048GCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.016003200480064008000SE +/- 15.60, N = 3SE +/- 74.47, N = 3SE +/- 50.06, N = 3SE +/- 19.37, N = 37381.007288.806627.776462.331. (CC) gcc options: -pthread -O3 -march=znver2 -lm

FFTW

Build: Stock - Size: 2D FFT Size 4096

OpenBenchmarking.orgMflops, More Is BetterFFTW 3.3.6Build: Stock - Size: 2D FFT Size 4096GCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.014002800420056007000SE +/- 32.75, N = 3SE +/- 67.18, N = 3SE +/- 41.90, N = 3SE +/- 48.86, N = 126327.206289.305842.735593.441. (CC) gcc options: -pthread -O3 -march=znver2 -lm

SciMark

Computational Test: Composite

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: CompositeLLVM Clang 9.0 SVNGCC 9.1.0GCC 10.0 GitAOCC 2.06001200180024003000SE +/- 9.28, N = 3SE +/- 10.94, N = 3SE +/- 4.68, N = 3SE +/- 4.27, N = 32880.562834.062828.012730.131. (CC) gcc options: -O3 -march=znver2 -lm

SciMark

Computational Test: Monte Carlo

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Monte CarloLLVM Clang 9.0 SVNGCC 9.1.0GCC 10.0 GitAOCC 2.0130260390520650SE +/- 0.10, N = 3SE +/- 0.53, N = 3SE +/- 0.05, N = 3SE +/- 0.12, N = 3621.05612.17610.98605.881. (CC) gcc options: -O3 -march=znver2 -lm

SciMark

Computational Test: Fast Fourier Transform

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Fast Fourier TransformLLVM Clang 9.0 SVNGCC 9.1.0GCC 10.0 GitAOCC 2.050100150200250SE +/- 0.10, N = 3SE +/- 0.91, N = 3SE +/- 0.44, N = 3SE +/- 0.38, N = 3224.52203.68202.71178.571. (CC) gcc options: -O3 -march=znver2 -lm

SciMark

Computational Test: Sparse Matrix Multiply

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Sparse Matrix MultiplyLLVM Clang 9.0 SVNGCC 10.0 GitGCC 9.1.0AOCC 2.07001400210028003500SE +/- 47.14, N = 3SE +/- 15.27, N = 3SE +/- 69.70, N = 3SE +/- 14.78, N = 33382.932763.502741.972736.941. (CC) gcc options: -O3 -march=znver2 -lm

SciMark

Computational Test: Dense LU Matrix Factorization

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Dense LU Matrix FactorizationGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.02K4K6K8K10KSE +/- 15.96, N = 3SE +/- 28.43, N = 3SE +/- 6.82, N = 3SE +/- 10.49, N = 38811.178762.758518.528473.111. (CC) gcc options: -O3 -march=znver2 -lm

SciMark

Computational Test: Jacobi Successive Over-Relaxation

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Jacobi Successive Over-RelaxationGCC 9.1.0GCC 10.0 GitAOCC 2.0LLVM Clang 9.0 SVN400800120016002000SE +/- 0.11, N = 3SE +/- 0.14, N = 3SE +/- 0.43, N = 3SE +/- 0.16, N = 31801.311800.111656.181655.771. (CC) gcc options: -O3 -march=znver2 -lm

TSCP

AI Chess Performance

OpenBenchmarking.orgNodes Per Second, More Is BetterTSCP 1.81AI Chess PerformanceLLVM Clang 9.0 SVNAOCC 2.0GCC 9.1.0GCC 10.0 Git200K400K600K800K1000KSE +/- 479.00, N = 5SE +/- 532.27, N = 5SE +/- 1412.87, N = 5SE +/- 393.00, N = 511493701093682107281210407751. (CC) gcc options: -O3 -march=znver2 -march=native

John The Ripper

Test: Blowfish

OpenBenchmarking.orgReal C/S, More Is BetterJohn The Ripper 1.9.0-jumbo-1Test: BlowfishLLVM Clang 9.0 SVNAOCC 2.0GCC 10.0 GitGCC 9.1.040K80K120K160K200KSE +/- 2145.04, N = 3SE +/- 858.63, N = 3SE +/- 760.59, N = 3SE +/- 794.73, N = 31876521871401485421483021. (CC) gcc options: -m64 -lssl -lcrypto -fopenmp -lgmp -pthread -lm -lz -ldl -lcrypt -lbz2

Apache Benchmark

Static Web Page Serving

OpenBenchmarking.orgRequests Per Second, More Is BetterApache Benchmark 2.4.29Static Web Page ServingGCC 9.1.0LLVM Clang 9.0 SVNAOCC 2.0GCC 10.0 Git5K10K15K20K25KSE +/- 435.79, N = 15SE +/- 400.39, N = 15SE +/- 395.53, N = 15SE +/- 497.81, N = 1524915.1924594.6624163.3124096.601. (CC) gcc options: -shared -fPIC -pthread -O3 -march=znver2

C-Ray

Total Time - 4K, 16 Rays Per Pixel

OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total Time - 4K, 16 Rays Per PixelGCC 9.1.0GCC 10.0 GitAOCC 2.0LLVM Clang 9.0 SVN3691215SE +/- 0.09, N = 3SE +/- 0.09, N = 3SE +/- 0.13, N = 3SE +/- 0.04, N = 35.725.829.019.191. (CC) gcc options: -lm -lpthread -O3 -march=znver2

AOBench

Size: 2048 x 2048 - Total Time

OpenBenchmarking.orgSeconds, Fewer Is BetterAOBenchSize: 2048 x 2048 - Total TimeGCC 10.0 GitGCC 9.1.0AOCC 2.0LLVM Clang 9.0 SVN1020304050SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.04, N = 3SE +/- 0.01, N = 335.3336.7737.0241.751. (CC) gcc options: -lm -O3 -march=znver2

dav1d

Video Input: Summer Nature 4K

OpenBenchmarking.orgSeconds, Fewer Is Betterdav1d 0.3Video Input: Summer Nature 4KAOCC 2.0GCC 10.0 GitGCC 9.1.0LLVM Clang 9.0 SVN3691215SE +/- 0.07, N = 3SE +/- 0.04, N = 3SE +/- 0.15, N = 3SE +/- 0.19, N = 311.1411.1611.5211.561. (CC) gcc options: -O3 -march=znver2 -pthread

dav1d

Video Input: Summer Nature 1080p

OpenBenchmarking.orgSeconds, Fewer Is Betterdav1d 0.3Video Input: Summer Nature 1080pGCC 9.1.0GCC 10.0 GitAOCC 2.0LLVM Clang 9.0 SVN1.09352.1873.28054.3745.4675SE +/- 0.04, N = 3SE +/- 0.03, N = 3SE +/- 0.04, N = 3SE +/- 0.00, N = 34.754.774.774.861. (CC) gcc options: -O3 -march=znver2 -pthread

CppPerformanceBenchmarks

Test: Atol

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: AtolLLVM Clang 9.0 SVNGCC 10.0 GitGCC 9.1.0AOCC 2.020406080100SE +/- 0.06, N = 3SE +/- 0.12, N = 3SE +/- 0.23, N = 3SE +/- 0.28, N = 374.1074.3274.3674.381. (CXX) g++ options: -O3 -march=znver2 -std=c++11

CppPerformanceBenchmarks

Test: Ctype

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: CtypeLLVM Clang 9.0 SVNAOCC 2.0GCC 10.0 GitGCC 9.1.01020304050SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.12, N = 336.7437.8139.3341.661. (CXX) g++ options: -O3 -march=znver2 -std=c++11

CppPerformanceBenchmarks

Test: Math Library

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Math LibraryAOCC 2.0LLVM Clang 9.0 SVNGCC 10.0 GitGCC 9.1.070140210280350SE +/- 0.31, N = 3SE +/- 0.43, N = 3SE +/- 0.12, N = 3SE +/- 0.46, N = 3330.41331.02333.85343.451. (CXX) g++ options: -O3 -march=znver2 -std=c++11

CppPerformanceBenchmarks

Test: Random Numbers

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Random NumbersGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.0400800120016002000SE +/- 0.06, N = 3SE +/- 0.12, N = 3SE +/- 0.02, N = 3SE +/- 0.26, N = 31599.071627.991892.461894.021. (CXX) g++ options: -O3 -march=znver2 -std=c++11

CppPerformanceBenchmarks

Test: Stepanov Vector

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Stepanov VectorLLVM Clang 9.0 SVNAOCC 2.0GCC 10.0 GitGCC 9.1.020406080100SE +/- 0.11, N = 3SE +/- 0.35, N = 3SE +/- 0.05, N = 3SE +/- 0.02, N = 385.8989.7397.7099.211. (CXX) g++ options: -O3 -march=znver2 -std=c++11

CppPerformanceBenchmarks

Test: Function Objects

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Function ObjectsLLVM Clang 9.0 SVNGCC 9.1.0AOCC 2.0GCC 10.0 Git510152025SE +/- 0.08, N = 3SE +/- 0.02, N = 3SE +/- 0.03, N = 3SE +/- 0.08, N = 318.8218.9318.9419.011. (CXX) g++ options: -O3 -march=znver2 -std=c++11

CppPerformanceBenchmarks

Test: Stepanov Abstraction

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Stepanov AbstractionLLVM Clang 9.0 SVNAOCC 2.0GCC 10.0 GitGCC 9.1.0816243240SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 333.4434.1036.5236.661. (CXX) g++ options: -O3 -march=znver2 -std=c++11


Phoronix Test Suite v10.8.5