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.

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 Benchmarkshpcg: fftw: 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: Blowfishsvt-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 Encodinggraphics-magick: Rotategraphics-magick: Resizingcoremark: CoreMark Size 666 - Iterations Per Secondc-ray: Total Time - 4K, 16 Rays Per Pixelaobench: 2048 x 2048 - Total Timedav1d: Summer Nature 4Kdav1d: Summer Nature 1080ptjbench: Decompression Throughputcpp-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 Abstractionapache: Static Web Page ServingGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.00.367381.006327.202834.06612.17203.682741.978811.171801.311072812148302101.07343.29277.45153.3144.542041023868113.715.7236.7711.524.75175.1674.3641.66343.451599.0799.2118.9336.6624915.190.367288.806289.302828.01610.98202.712763.508762.751800.111040775148542100.44344.04283.63152.4344.732021023825301.455.8235.3311.164.77175.4874.3239.33333.851627.9997.7019.0136.5224096.600.356627.775842.732880.56621.05224.523382.938518.521655.771149370187652102.78337.75274.55153.9545.372371193024508.819.1941.7511.564.86174.1374.1036.74331.021892.4685.8918.8233.4424594.660.336462.335593.442730.13605.88178.572736.948473.111656.181093682187140157.1845.572051203284059.929.0137.0211.144.77175.9674.3837.81330.411894.0289.7318.9434.1024163.31OpenBenchmarking.org

High Performance Conjugate Gradient

OpenBenchmarking.orgGFLOP/s, More Is BetterHigh Performance Conjugate Gradient 3.0GCC 9.1.0GCC 10.0 GitLLVM 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

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: CompositeGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.06001200180024003000SE +/- 10.94, N = 3SE +/- 4.68, N = 3SE +/- 9.28, N = 3SE +/- 4.27, N = 32834.062828.012880.562730.131. (CC) gcc options: -O3 -march=znver2 -lm

SciMark

Computational Test: Monte Carlo

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

SciMark

Computational Test: Fast Fourier Transform

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

SciMark

Computational Test: Sparse Matrix Multiply

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Sparse Matrix MultiplyGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.07001400210028003500SE +/- 69.70, N = 3SE +/- 15.27, N = 3SE +/- 47.14, N = 3SE +/- 14.78, N = 32741.972763.503382.932736.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 GitLLVM Clang 9.0 SVNAOCC 2.0400800120016002000SE +/- 0.11, N = 3SE +/- 0.14, N = 3SE +/- 0.16, N = 3SE +/- 0.43, N = 31801.311800.111655.771656.181. (CC) gcc options: -O3 -march=znver2 -lm

TSCP

AI Chess Performance

OpenBenchmarking.orgNodes Per Second, More Is BetterTSCP 1.81AI Chess PerformanceGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.0200K400K600K800K1000KSE +/- 1412.87, N = 5SE +/- 393.00, N = 5SE +/- 479.00, N = 5SE +/- 532.27, N = 510728121040775114937010936821. (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: BlowfishGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.040K80K120K160K200KSE +/- 794.73, N = 3SE +/- 760.59, N = 3SE +/- 2145.04, N = 3SE +/- 858.63, N = 31483021485421876521871401. (CC) gcc options: -m64 -lssl -lcrypto -fopenmp -lgmp -pthread -lm -lz -ldl -lcrypt -lbz2

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 EncodeGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVN20406080100SE +/- 1.25, N = 5SE +/- 0.16, N = 3SE +/- 0.32, N = 3101.07100.44102.781. (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 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVN70140210280350SE +/- 4.37, N = 3SE +/- 3.15, N = 10SE +/- 4.13, N = 3343.29344.04337.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 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVN60120180240300SE +/- 4.48, N = 3SE +/- 3.30, N = 15SE +/- 3.16, N = 3277.45283.63274.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 EncodingGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.0306090120150SE +/- 0.91, N = 3SE +/- 0.41, N = 3SE +/- 0.48, N = 3SE +/- 2.65, N = 3153.31152.43153.95157.18-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 EncodingGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.01020304050SE +/- 0.11, N = 3SE +/- 0.21, N = 3SE +/- 0.15, N = 3SE +/- 0.15, N = 344.5444.7345.3745.571. (CXX) g++ options: -O3 -march=znver2 -rdynamic -lpthread -lrt -ldl -lnuma

GraphicsMagick

Operation: Rotate

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Operation: RotateGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.050100150200250SE +/- 1.15, N = 3204202237205-ldl-ldl-lomp-lomp1. (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: ResizingGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.0306090120150SE +/- 0.58, N = 3SE +/- 1.53, N = 3SE +/- 2.59, N = 12102102119120-ldl-ldl-lomp-lomp1. (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 GitLLVM Clang 9.0 SVNAOCC 2.0800K1600K2400K3200K4000KSE +/- 60538.32, N = 3SE +/- 29615.82, N = 3SE +/- 32092.57, N = 3SE +/- 40813.96, N = 33868113.713825301.453024508.813284059.921. (CC) gcc options: -O2 -O3 -march=znver2 -lrt" -lrt

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 GitLLVM Clang 9.0 SVNAOCC 2.03691215SE +/- 0.09, N = 3SE +/- 0.09, N = 3SE +/- 0.04, N = 3SE +/- 0.13, N = 35.725.829.199.011. (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 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.01020304050SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.04, N = 336.7735.3341.7537.021. (CC) gcc options: -lm -O3 -march=znver2

dav1d

Video Input: Summer Nature 4K

OpenBenchmarking.orgSeconds, Fewer Is Betterdav1d 0.3Video Input: Summer Nature 4KGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.03691215SE +/- 0.15, N = 3SE +/- 0.04, N = 3SE +/- 0.19, N = 3SE +/- 0.07, N = 311.5211.1611.5611.141. (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 GitLLVM Clang 9.0 SVNAOCC 2.01.09352.1873.28054.3745.4675SE +/- 0.04, N = 3SE +/- 0.03, N = 3SE +/- 0.00, N = 3SE +/- 0.04, N = 34.754.774.864.771. (CC) gcc options: -O3 -march=znver2 -pthread

libjpeg-turbo tjbench

Test: Decompression Throughput

OpenBenchmarking.orgMegapixels/sec, More Is Betterlibjpeg-turbo tjbench 2.0.2Test: Decompression ThroughputGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.04080120160200SE +/- 0.02, N = 3SE +/- 0.03, N = 3SE +/- 0.16, N = 3SE +/- 0.02, N = 3175.16175.48174.13175.961. (CC) gcc options: -O3 -march=znver2 -rdynamic

CppPerformanceBenchmarks

Test: Atol

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: AtolGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.020406080100SE +/- 0.23, N = 3SE +/- 0.12, N = 3SE +/- 0.06, N = 3SE +/- 0.28, N = 374.3674.3274.1074.381. (CXX) g++ options: -O3 -march=znver2 -std=c++11

CppPerformanceBenchmarks

Test: Ctype

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: CtypeGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.01020304050SE +/- 0.12, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 341.6639.3336.7437.811. (CXX) g++ options: -O3 -march=znver2 -std=c++11

CppPerformanceBenchmarks

Test: Math Library

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Math LibraryGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.070140210280350SE +/- 0.46, N = 3SE +/- 0.12, N = 3SE +/- 0.43, N = 3SE +/- 0.31, N = 3343.45333.85331.02330.411. (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 VectorGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.020406080100SE +/- 0.02, N = 3SE +/- 0.05, N = 3SE +/- 0.11, N = 3SE +/- 0.35, N = 399.2197.7085.8989.731. (CXX) g++ options: -O3 -march=znver2 -std=c++11

CppPerformanceBenchmarks

Test: Function Objects

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Function ObjectsGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.0510152025SE +/- 0.02, N = 3SE +/- 0.08, N = 3SE +/- 0.08, N = 3SE +/- 0.03, N = 318.9319.0118.8218.941. (CXX) g++ options: -O3 -march=znver2 -std=c++11

CppPerformanceBenchmarks

Test: Stepanov Abstraction

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Stepanov AbstractionGCC 9.1.0GCC 10.0 GitLLVM Clang 9.0 SVNAOCC 2.0816243240SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.01, N = 336.6636.5233.4434.101. (CXX) g++ options: -O3 -march=znver2 -std=c++11

Apache Benchmark

Static Web Page Serving

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


Phoronix Test Suite v10.8.5