GCC9 POWER9 Compiler Benchmarks

POWER9 testing with a PowerNV C1P9S01 REV 1.01 compiler benchmarking for a future article.

HTML result view exported from: https://openbenchmarking.org/result/1906236-HV-GCC9POWER43&sor&grt.

GCC9 POWER9 Compiler BenchmarksProcessorMotherboardMemoryDiskGraphicsNetworkOSKernelCompilerFile-SystemScreen ResolutionGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.1POWER9 @ 3.80GHz (4 Cores / 16 Threads)PowerNV C1P9S01 REV 1.01131072MB1024GB SAMSUNG MZVLB1T0HALR-000L7ASPEED3 x Broadcom NetXtreme BCM5719 PCIeUbuntu 19.045.0.0-17-generic (ppc64le)GCC 9.1.0ext41024x768GCC 10.0.0 20190616Clang 8.0.1 + LLVM 8.0.1OpenBenchmarking.orgCompiler Details- GCC 9.1.0: --enable-checking=release- GCC 10.0.0 20190616: --enable-checking=release- LLVM Clang 8.0.1: Optimized build; Default target: powerpc64le-unknown-linux-gnu; Host CPU: pwr9 Processor Details- SMT (threads per core): 4Python Details- Python 2.7.16 + Python 3.7.3Security Details- l1tf: Not affected + mds: Not affected + meltdown: Mitigation of RFI Flush L1D private per thread + spec_store_bypass: Mitigation of Kernel entry/exit barrier (eieio) + spectre_v1: Mitigation of __user pointer sanitization ori31 speculation barrier enabled + spectre_v2: Mitigation of Indirect branch cache disabled

GCC9 POWER9 Compiler Benchmarksapache: Static Web Page Servingc-ray: Total Time - 4K, 16 Rays Per Pixelcpp-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 Abstractiondav1d: Summer Nature 4Kdav1d: Summer Nature 1080pencode-flac: WAV To FLACgraphics-magick: Swirlgraphics-magick: Rotategraphics-magick: Sharpengraphics-magick: Enhancedgraphics-magick: Resizinggraphics-magick: Noise-Gaussiangraphics-magick: HWB Color Spacehimeno: Poisson Pressure Solverencode-mp3: WAV To MP3tjbench: Decompression Throughputopenssl: RSA 4096-bit Performancepgbench: Buffer Test - Normal Load - Read Onlypgbench: Buffer Test - Normal Load - Read Writeredis: LPOPredis: SADDredis: LPUSHredis: GETredis: SETscimark2: Compositescimark2: Monte Carloscimark2: Fast Fourier Transformscimark2: Sparse Matrix Multiplyscimark2: Dense LU Matrix Factorizationscimark2: Jacobi Successive Over-Relaxationsmallpt: Global Illumination Renderer; 128 Samplesbuild-llvm: Time To Compilex264: H.264 Video Encodingx265: H.265 1080p Video EncodingGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.117985.14204.93122.80167.77781.592156.82139.6526.4157.19382.2593.6040.33131185748516877179637.1675.30101.36852.3096860.6910960.371059020.41710532.17568842.41934311.06585363.53268.6559.95163.73273.69283.27562.6238.011260.9915.713.9217853.33205.35121.04167.57780.842137.23139.7426.3957.18378.1292.0240.32128184698316575179636.7975.84101.14838.9796945.1710999.591045275.77725169.62574786.06942834.62571452.36263.0261.29164.05274.26255.18560.3137.681280.2213.633.3117819.95667.90120.21153.26775.784529.86131.3727.8853.07392.4590.1448.754415818228516116581.5919.29105.05791.2394535.8010917.571007820.41728590.02571604.42993911.90571064.36277.4368.98174.48269.37285.92588.431060.2815.33OpenBenchmarking.org

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.0 20190616LLVM Clang 8.0.14K8K12K16K20KSE +/- 65.06, N = 3SE +/- 55.87, N = 3SE +/- 40.71, N = 317985.1417853.3317819.951. (CC) gcc options: -shared -fPIC -O2 -pthread

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.0 20190616LLVM Clang 8.0.1140280420560700SE +/- 1.98, N = 3SE +/- 0.35, N = 3SE +/- 0.57, N = 3204.93205.35667.901. (CC) gcc options: -lm -lpthread -O3

CppPerformanceBenchmarks

Test: Atol

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: AtolLLVM Clang 8.0.1GCC 10.0.0 20190616GCC 9.1.0306090120150SE +/- 0.10, N = 3SE +/- 0.22, N = 3SE +/- 0.14, N = 3120.21121.04122.801. (CXX) g++ options: -std=c++11 -O3

CppPerformanceBenchmarks

Test: Ctype

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: CtypeLLVM Clang 8.0.1GCC 10.0.0 20190616GCC 9.1.04080120160200SE +/- 0.32, N = 3SE +/- 0.03, N = 3SE +/- 0.27, N = 3153.26167.57167.771. (CXX) g++ options: -std=c++11 -O3

CppPerformanceBenchmarks

Test: Math Library

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Math LibraryLLVM Clang 8.0.1GCC 10.0.0 20190616GCC 9.1.02004006008001000SE +/- 0.07, N = 3SE +/- 0.13, N = 3SE +/- 1.01, N = 3775.78780.84781.591. (CXX) g++ options: -std=c++11 -O3

CppPerformanceBenchmarks

Test: Random Numbers

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Random NumbersGCC 10.0.0 20190616GCC 9.1.0LLVM Clang 8.0.110002000300040005000SE +/- 0.13, N = 3SE +/- 3.96, N = 3SE +/- 0.45, N = 32137.232156.824529.861. (CXX) g++ options: -std=c++11 -O3

CppPerformanceBenchmarks

Test: Stepanov Vector

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Stepanov VectorLLVM Clang 8.0.1GCC 9.1.0GCC 10.0.0 20190616306090120150SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.03, N = 3131.37139.65139.741. (CXX) g++ options: -std=c++11 -O3

CppPerformanceBenchmarks

Test: Function Objects

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Function ObjectsGCC 10.0.0 20190616GCC 9.1.0LLVM Clang 8.0.1714212835SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 326.3926.4127.881. (CXX) g++ options: -std=c++11 -O3

CppPerformanceBenchmarks

Test: Stepanov Abstraction

OpenBenchmarking.orgSeconds, Fewer Is BetterCppPerformanceBenchmarks 9Test: Stepanov AbstractionLLVM Clang 8.0.1GCC 10.0.0 20190616GCC 9.1.01326395265SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 353.0757.1857.191. (CXX) g++ options: -std=c++11 -O3

dav1d

Video Input: Summer Nature 4K

OpenBenchmarking.orgSeconds, Fewer Is Betterdav1d 0.3Video Input: Summer Nature 4KGCC 10.0.0 20190616GCC 9.1.0LLVM Clang 8.0.190180270360450SE +/- 0.74, N = 3SE +/- 0.80, N = 3SE +/- 3.25, N = 3378.12382.25392.451. (CC) gcc options: -pthread

dav1d

Video Input: Summer Nature 1080p

OpenBenchmarking.orgSeconds, Fewer Is Betterdav1d 0.3Video Input: Summer Nature 1080pLLVM Clang 8.0.1GCC 10.0.0 20190616GCC 9.1.020406080100SE +/- 0.98, N = 3SE +/- 0.62, N = 3SE +/- 0.62, N = 390.1492.0293.601. (CC) gcc options: -pthread

FLAC Audio Encoding

WAV To FLAC

OpenBenchmarking.orgSeconds, Fewer Is BetterFLAC Audio Encoding 1.3.2WAV To FLACGCC 10.0.0 20190616GCC 9.1.0LLVM Clang 8.0.11122334455SE +/- 0.35, N = 12SE +/- 0.30, N = 16SE +/- 0.44, N = 1040.3240.3348.75-fvisibility=hidden-fvisibility=hidden1. (CXX) g++ options: -O2 -lm

GraphicsMagick

Operation: Swirl

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Operation: SwirlGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.1306090120150SE +/- 1.45, N = 3SE +/- 1.45, N = 3SE +/- 0.33, N = 313112844-fopenmp -ldl-fopenmp -ldl1. (CC) gcc options: -O2 -pthread -lSM -lICE -lX11 -lz -lm -lpthread

GraphicsMagick

Operation: Rotate

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Operation: RotateGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.14080120160200SE +/- 0.67, N = 3185184158-fopenmp -ldl-fopenmp -ldl1. (CC) gcc options: -O2 -pthread -lSM -lICE -lX11 -lz -lm -lpthread

GraphicsMagick

Operation: Sharpen

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Operation: SharpenGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.11632486480SE +/- 0.67, N = 3SE +/- 0.55, N = 13746918-fopenmp -ldl-fopenmp -ldl1. (CC) gcc options: -O2 -pthread -lSM -lICE -lX11 -lz -lm -lpthread

GraphicsMagick

Operation: Enhanced

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Operation: EnhancedGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.120406080100858322-fopenmp -ldl-fopenmp -ldl1. (CC) gcc options: -O2 -pthread -lSM -lICE -lX11 -lz -lm -lpthread

GraphicsMagick

Operation: Resizing

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Operation: ResizingGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.14080120160200SE +/- 0.33, N = 3SE +/- 1.76, N = 316816585-fopenmp -ldl-fopenmp -ldl1. (CC) gcc options: -O2 -pthread -lSM -lICE -lX11 -lz -lm -lpthread

GraphicsMagick

Operation: Noise-Gaussian

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Operation: Noise-GaussianGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.120406080100SE +/- 1.20, N = 3SE +/- 1.15, N = 3777516-fopenmp -ldl-fopenmp -ldl1. (CC) gcc options: -O2 -pthread -lSM -lICE -lX11 -lz -lm -lpthread

GraphicsMagick

Operation: HWB Color Space

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Operation: HWB Color SpaceGCC 10.0.0 20190616GCC 9.1.0LLVM Clang 8.0.14080120160200SE +/- 0.33, N = 3SE +/- 0.33, N = 3179179116-fopenmp -ldl-fopenmp -ldl1. (CC) gcc options: -O2 -pthread -lSM -lICE -lX11 -lz -lm -lpthread

Himeno Benchmark

Poisson Pressure Solver

OpenBenchmarking.orgMFLOPS, More Is BetterHimeno Benchmark 3.0Poisson Pressure SolverGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.1140280420560700SE +/- 6.46, N = 15SE +/- 3.16, N = 3SE +/- 6.53, N = 15637.16636.79581.591. (CC) gcc options: -O3

LAME MP3 Encoding

WAV To MP3

OpenBenchmarking.orgSeconds, Fewer Is BetterLAME MP3 Encoding 3.100WAV To MP3LLVM Clang 8.0.1GCC 9.1.0GCC 10.0.0 2019061620406080100SE +/- 0.07, N = 3SE +/- 0.12, N = 3SE +/- 0.04, N = 319.2975.3075.84-O3 -pipe1. (CC) gcc options: -lm

libjpeg-turbo tjbench

Test: Decompression Throughput

OpenBenchmarking.orgMegapixels/sec, More Is Betterlibjpeg-turbo tjbench 1.5.3Test: Decompression ThroughputLLVM Clang 8.0.1GCC 9.1.0GCC 10.0.0 2019061620406080100SE +/- 0.01, N = 3SE +/- 0.03, N = 3SE +/- 0.01, N = 3105.05101.36101.14-lm-lm1. (CC) gcc options: -O3

OpenSSL

RSA 4096-bit Performance

OpenBenchmarking.orgSigns Per Second, More Is BetterOpenSSL 1.1.1RSA 4096-bit PerformanceGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.12004006008001000SE +/- 0.15, N = 3SE +/- 0.09, N = 3SE +/- 0.18, N = 3852.30838.97791.23-Qunused-arguments1. (CC) gcc options: -pthread -m64 -O3 -lssl -lcrypto -ldl

PostgreSQL pgbench

Scaling: Buffer Test - Test: Normal Load - Mode: Read Only

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.3Scaling: Buffer Test - Test: Normal Load - Mode: Read OnlyGCC 10.0.0 20190616GCC 9.1.0LLVM Clang 8.0.120K40K60K80K100KSE +/- 876.13, N = 3SE +/- 1248.50, N = 3SE +/- 932.17, N = 396945.1796860.6994535.801. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

PostgreSQL pgbench

Scaling: Buffer Test - Test: Normal Load - Mode: Read Write

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.3Scaling: Buffer Test - Test: Normal Load - Mode: Read WriteGCC 10.0.0 20190616GCC 9.1.0LLVM Clang 8.0.12K4K6K8K10KSE +/- 15.98, N = 3SE +/- 35.67, N = 3SE +/- 9.76, N = 310999.5910960.3710917.571. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

Redis

Test: LPOP

OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 4.0.8Test: LPOPGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.1200K400K600K800K1000KSE +/- 16618.25, N = 15SE +/- 16475.39, N = 15SE +/- 16615.22, N = 151059020.411045275.771007820.411. (CC) gcc options: -ggdb -rdynamic -lm -ldl -pthread

Redis

Test: SADD

OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 4.0.8Test: SADDLLVM Clang 8.0.1GCC 10.0.0 20190616GCC 9.1.0160K320K480K640K800KSE +/- 9654.52, N = 3SE +/- 8548.45, N = 15SE +/- 7312.11, N = 15728590.02725169.62710532.171. (CC) gcc options: -ggdb -rdynamic -lm -ldl -pthread

Redis

Test: LPUSH

OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 4.0.8Test: LPUSHGCC 10.0.0 20190616LLVM Clang 8.0.1GCC 9.1.0120K240K360K480K600KSE +/- 7303.99, N = 3SE +/- 4782.46, N = 15SE +/- 6664.54, N = 6574786.06571604.42568842.411. (CC) gcc options: -ggdb -rdynamic -lm -ldl -pthread

Redis

Test: GET

OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 4.0.8Test: GETLLVM Clang 8.0.1GCC 10.0.0 20190616GCC 9.1.0200K400K600K800K1000KSE +/- 16428.18, N = 3SE +/- 16704.21, N = 15SE +/- 14189.58, N = 15993911.90942834.62934311.061. (CC) gcc options: -ggdb -rdynamic -lm -ldl -pthread

Redis

Test: SET

OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 4.0.8Test: SETGCC 9.1.0GCC 10.0.0 20190616LLVM Clang 8.0.1130K260K390K520K650KSE +/- 7818.46, N = 4SE +/- 6076.05, N = 15SE +/- 7412.36, N = 4585363.53571452.36571064.361. (CC) gcc options: -ggdb -rdynamic -lm -ldl -pthread

SciMark

Computational Test: Composite

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: CompositeLLVM Clang 8.0.1GCC 9.1.0GCC 10.0.0 2019061660120180240300SE +/- 0.93, N = 3SE +/- 2.15, N = 3SE +/- 2.17, N = 3277.43268.65263.021. (CC) gcc options: -lm

SciMark

Computational Test: Monte Carlo

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Monte CarloLLVM Clang 8.0.1GCC 10.0.0 20190616GCC 9.1.01530456075SE +/- 1.38, N = 3SE +/- 0.01, N = 3SE +/- 0.03, N = 368.9861.2959.951. (CC) gcc options: -lm

SciMark

Computational Test: Fast Fourier Transform

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Fast Fourier TransformLLVM Clang 8.0.1GCC 10.0.0 20190616GCC 9.1.04080120160200SE +/- 0.58, N = 3SE +/- 0.16, N = 3SE +/- 0.58, N = 3174.48164.05163.731. (CC) gcc options: -lm

SciMark

Computational Test: Sparse Matrix Multiply

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Sparse Matrix MultiplyGCC 10.0.0 20190616GCC 9.1.0LLVM Clang 8.0.160120180240300SE +/- 0.09, N = 3SE +/- 0.27, N = 3SE +/- 0.52, N = 3274.26273.69269.371. (CC) gcc options: -lm

SciMark

Computational Test: Dense LU Matrix Factorization

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Dense LU Matrix FactorizationLLVM Clang 8.0.1GCC 9.1.0GCC 10.0.0 2019061660120180240300SE +/- 2.83, N = 3SE +/- 12.96, N = 3SE +/- 8.31, N = 3285.92283.27255.181. (CC) gcc options: -lm

SciMark

Computational Test: Jacobi Successive Over-Relaxation

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Jacobi Successive Over-RelaxationLLVM Clang 8.0.1GCC 9.1.0GCC 10.0.0 20190616130260390520650SE +/- 0.17, N = 3SE +/- 4.92, N = 3SE +/- 3.41, N = 3588.43562.62560.311. (CC) gcc options: -lm

Smallpt

Global Illumination Renderer; 128 Samples

OpenBenchmarking.orgSeconds, Fewer Is BetterSmallpt 1.0Global Illumination Renderer; 128 SamplesGCC 10.0.0 20190616GCC 9.1.0918273645SE +/- 0.12, N = 3SE +/- 0.09, N = 337.6838.011. (CXX) g++ options: -fopenmp -O3

Timed LLVM Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed LLVM Compilation 6.0.1Time To CompileLLVM Clang 8.0.1GCC 9.1.0GCC 10.0.0 20190616300600900120015001060.281260.991280.22

x264

H.264 Video Encoding

OpenBenchmarking.orgFrames Per Second, More Is Betterx264 2018-09-25H.264 Video EncodingGCC 9.1.0LLVM Clang 8.0.1GCC 10.0.0 2019061648121620SE +/- 0.03, N = 3SE +/- 0.25, N = 3SE +/- 0.20, N = 1515.7115.3313.631. (CC) gcc options: -ldl -lm -lpthread -O3 -ffast-math -maltivec -mabi=altivec -mvsx -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.0 201906160.8821.7642.6463.5284.41SE +/- 0.07, N = 12SE +/- 0.02, N = 33.923.311. (CXX) g++ options: -O3 -rdynamic -lpthread -lrt -ldl -lnuma


Phoronix Test Suite v10.8.4