Ampere eMAG ARMv8 compiler benchmarking with GCC and Clang for a future article on Phoronix.
Compare your own system(s) to this result file with the
Phoronix Test Suite by running the command:
phoronix-test-suite benchmark 1902119-SP-AARCH64CO26 AArch64 Compiler Benchmarks Feb 2018 - Phoronix Test Suite AArch64 Compiler Benchmarks Feb 2018 Ampere eMAG ARMv8 compiler benchmarking with GCC and Clang for a future article on Phoronix.
HTML result view exported from: https://openbenchmarking.org/result/1902119-SP-AARCH64CO26 .
AArch64 Compiler Benchmarks Feb 2018 Processor Motherboard Chipset Memory Disk Graphics Network OS Kernel Compiler File-System Screen Resolution GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 Ampere eMAG ARMv8 @ 3.00GHz (32 Cores) AmpereComputing OSPREY (4.8.19 BIOS) Applied Micro Circuits X-Gene 129024MB 256GB Samsung SSD 860 ASPEED Family Intel I210 Fedora 29 4.20.6-200.fc29.aarch64 (aarch64) 20190131 GCC 8.2.0 xfs 1024x768 GCC 9.0.1 20190203 Clang 7.0.1 + LLVM 7.0.1 Clang 8.0.0 + LLVM 8.0.0 OpenBenchmarking.org Environment Details - CFLAGS=-O3-march=armv8-a+crypto+crc+aes+sha2 CXXFLAGS=-O3-march=armv8-a+crypto+crc+aes+sha2 Compiler Details - GCC 8.2.0: --enable-checking=release - GCC 9.0.1: --enable-checking=release - Clang 7.0.1: Optimized build; Default target: aarch64-unknown-linux-gnu; Host CPU: (unknown) - Clang 8.0.0-rc2: Optimized build; Default target: aarch64-unknown-linux-gnu; Host CPU: (unknown) Processor Details - Scaling Governor: cppc_cpufreq ondemand Python Details - Python 2.7.15 + Python 3.7.2 Security Details - SELinux
AArch64 Compiler Benchmarks Feb 2018 t-test1: 1 t-test1: 2 lzbench: XZ 0 - Compression lzbench: XZ 0 - Decompression lzbench: Zstd 1 - Compression lzbench: Zstd 1 - Decompression lzbench: Brotli 0 - Compression lzbench: Brotli 0 - Decompression lzbench: Libdeflate 1 - Compression lzbench: Libdeflate 1 - Decompression mafft: Multiple Sequence Alignment cachebench: Read cachebench: Write cachebench: Read / Modify / Write scimark2: Composite scimark2: Monte Carlo scimark2: Fast Fourier Transform scimark2: Sparse Matrix Multiply scimark2: Dense LU Matrix Factorization scimark2: Jacobi Successive Over-Relaxation graphics-magick: Swirl graphics-magick: Rotate graphics-magick: Sharpen graphics-magick: Enhanced graphics-magick: Resizing graphics-magick: Noise-Gaussian graphics-magick: HWB Color Space himeno: Poisson Pressure Solver compress-7zip: Compress Speed Test build-gcc: Time To Compile build-imagemagick: Time To Compile build-llvm: Time To Compile c-ray: Total Time - 4K, 16 Rays Per Pixel compress-pbzip2: 256MB File Compression smallpt: Global Illumination Renderer; 128 Samples aobench: 2048 x 2048 - Total Time bullet: 3000 Fall bullet: 1000 Stack bullet: 1000 Convex bullet: 136 Ragdolls bullet: Prim Trimesh bullet: Convex Trimesh compress-xz: Compressing ubuntu-16.04.3-server-i386.img, Compression Level 9 compress-zstd: Compressing ubuntu-16.04.3-server-i386.img, Compression Level 19 dav1d: Summer Nature 4K dav1d: Summer Nature 1080p encode-flac: WAV To FLAC encode-mp3: WAV To MP3 ffmpeg: H.264 HD To NTSC DV openssl: RSA 4096-bit Performance tjbench: Decompression Throughput cpp-perf-bench: Atol cpp-perf-bench: Ctype cpp-perf-bench: Stepanov Vector cpp-perf-bench: Function Objects cpp-perf-bench: Stepanov Abstraction redis: LPOP redis: SADD redis: LPUSH redis: GET redis: SET sysbench: Memory sysbench: CPU xsbench: mcperf: Add mcperf: Get mcperf: Set mcperf: Append mcperf: Delete mcperf: Prepend mcperf: Replace apache: Static Web Page Serving apache-siege: 200 apache-siege: 250 GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 85.77 32.46 15 65 155 483 152 215 64 484 7.40 4571 10391 13558 706 279 176 748 1138 1188 139 141 128 105 151 101 160 806 43730 2729 86.01 621 78.42 4.58 16.79 109 19.40 23.81 28.15 11.43 3.81 5.64 173 22.41 184 68.73 51.04 29.38 36.63 2364 62.27 143 85.70 170 28.97 65.48 303369 312119 234390 335269 272504 56788453 40086 2748697 6809 17329 6781 6835 16987 6957 6776 2967 23431 23373 85.50 32.37 15 64 154 492 152 215 64 471 7.08 4571 10376 13548 711 279 177 755 1156 1188 139 140 128 105 148 103 159 812 45171 2719 94.42 638 78.58 4.66 17.06 110 19.54 23.81 28.39 11.36 3.81 5.64 179 22.63 181 68.23 50.37 30.46 36.38 2368 67.70 142 84.93 170 29.02 65.62 335430 316431 222818 327054 282048 56299123 40294 2442397 6688 17128 6613 6810 17311 6901 6933 2964 23156 23455 85.48 32.24 7.01 4571 17475 27461 600 240 163 561 1140 895 23 144 10 7 45 7 52 582 3761 64.65 496 156.13 141 20.37 25.03 29.10 12.16 3.96 5.84 184 23.81 193 69.81 60.27 30.57 36.19 2333 67.19 143 83.06 166 28.89 64.43 326052 297902 229757 343826 277030 55343486 40976 6855 17213 6843 6836 17375 6874 6919 2945 23215 23473 85.49 32.28 6.97 4571 17824 27462 606 240 168 568 1158 896 23 143 10 7 46 7 52 608 3667 63.50 517 156.18 141 20.15 25.04 29.05 12.12 3.97 5.83 185 23.96 192 69.89 60.89 33.67 35.91 2336 67.80 142 82.15 164 29.10 64.52 347380 296772 227467 343477 272753 53144563 40963 6872 17233 6756 6861 17263 6754 6794 2960 23508 23382 OpenBenchmarking.org
t-test1 Threads: 1 OpenBenchmarking.org Seconds, Fewer Is Better t-test1 2017-01-13 Threads: 1 GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 20 40 60 80 100 SE +/- 0.16, N = 3 SE +/- 0.30, N = 3 SE +/- 0.30, N = 3 SE +/- 0.28, N = 3 85.77 85.50 85.48 85.49 1. (CC) gcc options: -pthread -O3
t-test1 Threads: 2 OpenBenchmarking.org Seconds, Fewer Is Better t-test1 2017-01-13 Threads: 2 GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 8 16 24 32 40 SE +/- 0.19, N = 3 SE +/- 0.20, N = 3 SE +/- 0.17, N = 3 SE +/- 0.11, N = 3 32.46 32.37 32.24 32.28 1. (CC) gcc options: -pthread -O3
lzbench Test: XZ 0 - Process: Compression OpenBenchmarking.org MB/s, More Is Better lzbench 2017-08-08 Test: XZ 0 - Process: Compression GCC 8.2.0 GCC 9.0.1 4 8 12 16 20 15 15 1. (CXX) g++ options: -lrt -static -lpthread -fomit-frame-pointer -fstrict-aliasing -ffast-math -O3
lzbench Test: XZ 0 - Process: Decompression OpenBenchmarking.org MB/s, More Is Better lzbench 2017-08-08 Test: XZ 0 - Process: Decompression GCC 8.2.0 GCC 9.0.1 15 30 45 60 75 65 64 1. (CXX) g++ options: -lrt -static -lpthread -fomit-frame-pointer -fstrict-aliasing -ffast-math -O3
lzbench Test: Zstd 1 - Process: Compression OpenBenchmarking.org MB/s, More Is Better lzbench 2017-08-08 Test: Zstd 1 - Process: Compression GCC 8.2.0 GCC 9.0.1 30 60 90 120 150 SE +/- 0.58, N = 3 SE +/- 0.33, N = 3 155 154 1. (CXX) g++ options: -lrt -static -lpthread -fomit-frame-pointer -fstrict-aliasing -ffast-math -O3
lzbench Test: Zstd 1 - Process: Decompression OpenBenchmarking.org MB/s, More Is Better lzbench 2017-08-08 Test: Zstd 1 - Process: Decompression GCC 8.2.0 GCC 9.0.1 110 220 330 440 550 SE +/- 1.15, N = 3 483 492 1. (CXX) g++ options: -lrt -static -lpthread -fomit-frame-pointer -fstrict-aliasing -ffast-math -O3
lzbench Test: Brotli 0 - Process: Compression OpenBenchmarking.org MB/s, More Is Better lzbench 2017-08-08 Test: Brotli 0 - Process: Compression GCC 8.2.0 GCC 9.0.1 30 60 90 120 150 SE +/- 1.00, N = 3 SE +/- 0.88, N = 3 152 152 1. (CXX) g++ options: -lrt -static -lpthread -fomit-frame-pointer -fstrict-aliasing -ffast-math -O3
lzbench Test: Brotli 0 - Process: Decompression OpenBenchmarking.org MB/s, More Is Better lzbench 2017-08-08 Test: Brotli 0 - Process: Decompression GCC 8.2.0 GCC 9.0.1 50 100 150 200 250 SE +/- 0.33, N = 3 SE +/- 0.67, N = 3 215 215 1. (CXX) g++ options: -lrt -static -lpthread -fomit-frame-pointer -fstrict-aliasing -ffast-math -O3
lzbench Test: Libdeflate 1 - Process: Compression OpenBenchmarking.org MB/s, More Is Better lzbench 2017-08-08 Test: Libdeflate 1 - Process: Compression GCC 8.2.0 GCC 9.0.1 14 28 42 56 70 SE +/- 0.33, N = 3 64 64 1. (CXX) g++ options: -lrt -static -lpthread -fomit-frame-pointer -fstrict-aliasing -ffast-math -O3
lzbench Test: Libdeflate 1 - Process: Decompression OpenBenchmarking.org MB/s, More Is Better lzbench 2017-08-08 Test: Libdeflate 1 - Process: Decompression GCC 8.2.0 GCC 9.0.1 100 200 300 400 500 SE +/- 1.00, N = 3 484 471 1. (CXX) g++ options: -lrt -static -lpthread -fomit-frame-pointer -fstrict-aliasing -ffast-math -O3
Timed MAFFT Alignment Multiple Sequence Alignment OpenBenchmarking.org Seconds, Fewer Is Better Timed MAFFT Alignment 7.392 Multiple Sequence Alignment GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 2 4 6 8 10 SE +/- 0.13, N = 12 SE +/- 0.15, N = 9 SE +/- 0.07, N = 12 SE +/- 0.10, N = 12 7.40 7.08 7.01 6.97 1. (CC) gcc options: -std=c99 -O3 -lm -lpthread
CacheBench Test: Read OpenBenchmarking.org MB/s, More Is Better CacheBench Test: Read GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 1000 2000 3000 4000 5000 SE +/- 0.01, N = 3 SE +/- 0.33, N = 3 SE +/- 0.03, N = 3 SE +/- 0.01, N = 3 4571 4571 4571 4571 1. (CC) gcc options: -lrt
CacheBench Test: Write OpenBenchmarking.org MB/s, More Is Better CacheBench Test: Write GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 4K 8K 12K 16K 20K SE +/- 1.20, N = 3 SE +/- 0.65, N = 3 SE +/- 132.51, N = 3 SE +/- 18.83, N = 3 10391 10376 17475 17824 1. (CC) gcc options: -lrt
CacheBench Test: Read / Modify / Write OpenBenchmarking.org MB/s, More Is Better CacheBench Test: Read / Modify / Write GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 6K 12K 18K 24K 30K SE +/- 0.11, N = 3 SE +/- 0.83, N = 3 SE +/- 0.17, N = 3 SE +/- 0.07, N = 3 13558 13548 27461 27462 1. (CC) gcc options: -lrt
SciMark Computational Test: Composite OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Composite GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 150 300 450 600 750 SE +/- 0.48, N = 3 SE +/- 2.12, N = 3 SE +/- 0.21, N = 3 SE +/- 0.42, N = 3 706 711 600 606 1. (CC) gcc options: -O3 -lm
SciMark Computational Test: Monte Carlo OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Monte Carlo GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 60 120 180 240 300 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 279 279 240 240 1. (CC) gcc options: -O3 -lm
SciMark Computational Test: Fast Fourier Transform OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Fast Fourier Transform GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 40 80 120 160 200 SE +/- 0.32, N = 3 SE +/- 0.67, N = 3 SE +/- 0.71, N = 3 SE +/- 1.51, N = 3 176 177 163 168 1. (CC) gcc options: -O3 -lm
SciMark Computational Test: Sparse Matrix Multiply OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Sparse Matrix Multiply GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 160 320 480 640 800 SE +/- 1.74, N = 3 SE +/- 3.83, N = 3 SE +/- 0.37, N = 3 SE +/- 0.36, N = 3 748 755 561 568 1. (CC) gcc options: -O3 -lm
SciMark Computational Test: Dense LU Matrix Factorization OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Dense LU Matrix Factorization GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 200 400 600 800 1000 SE +/- 0.98, N = 3 SE +/- 6.05, N = 3 SE +/- 0.21, N = 3 SE +/- 0.33, N = 3 1138 1156 1140 1158 1. (CC) gcc options: -O3 -lm
SciMark Computational Test: Jacobi Successive Over-Relaxation OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Jacobi Successive Over-Relaxation GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 300 600 900 1200 1500 SE +/- 0.06, N = 3 SE +/- 0.37, N = 3 SE +/- 0.01, N = 3 SE +/- 0.27, N = 3 1188 1188 895 896 1. (CC) gcc options: -O3 -lm
GraphicsMagick Operation: Swirl OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.30 Operation: Swirl GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 30 60 90 120 150 SE +/- 1.00, N = 3 139 139 23 23 -fopenmp -ldl -fopenmp -ldl 1. (CC) gcc options: -O3 -pthread -lXext -lX11 -lz -lm -lpthread
GraphicsMagick Operation: Rotate OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.30 Operation: Rotate GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 30 60 90 120 150 SE +/- 0.58, N = 3 141 140 144 143 -fopenmp -ldl -fopenmp -ldl 1. (CC) gcc options: -O3 -pthread -lXext -lX11 -lz -lm -lpthread
GraphicsMagick Operation: Sharpen OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.30 Operation: Sharpen GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 30 60 90 120 150 SE +/- 0.33, N = 3 128 128 10 10 -fopenmp -ldl -fopenmp -ldl 1. (CC) gcc options: -O3 -pthread -lXext -lX11 -lz -lm -lpthread
GraphicsMagick Operation: Enhanced OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.30 Operation: Enhanced GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 20 40 60 80 100 SE +/- 0.33, N = 3 105 105 7 7 -fopenmp -ldl -fopenmp -ldl 1. (CC) gcc options: -O3 -pthread -lXext -lX11 -lz -lm -lpthread
GraphicsMagick Operation: Resizing OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.30 Operation: Resizing GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 30 60 90 120 150 151 148 45 46 -fopenmp -ldl -fopenmp -ldl 1. (CC) gcc options: -O3 -pthread -lXext -lX11 -lz -lm -lpthread
GraphicsMagick Operation: Noise-Gaussian OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.30 Operation: Noise-Gaussian GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 20 40 60 80 100 101 103 7 7 -fopenmp -ldl -fopenmp -ldl 1. (CC) gcc options: -O3 -pthread -lXext -lX11 -lz -lm -lpthread
GraphicsMagick Operation: HWB Color Space OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.30 Operation: HWB Color Space GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 40 80 120 160 200 SE +/- 0.58, N = 3 160 159 52 52 -fopenmp -ldl -fopenmp -ldl 1. (CC) gcc options: -O3 -pthread -lXext -lX11 -lz -lm -lpthread
Himeno Benchmark Poisson Pressure Solver OpenBenchmarking.org MFLOPS, More Is Better Himeno Benchmark 3.0 Poisson Pressure Solver GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 200 400 600 800 1000 SE +/- 2.58, N = 3 SE +/- 0.34, N = 3 SE +/- 0.25, N = 3 SE +/- 0.71, N = 3 806 812 582 608 1. (CC) gcc options: -O3
7-Zip Compression Compress Speed Test OpenBenchmarking.org MIPS, More Is Better 7-Zip Compression 16.02 Compress Speed Test GCC 8.2.0 GCC 9.0.1 10K 20K 30K 40K 50K SE +/- 177.16, N = 3 SE +/- 48.09, N = 3 43730 45171 1. (CXX) g++ options: -pipe -lpthread
Timed GCC Compilation Time To Compile OpenBenchmarking.org Seconds, Fewer Is Better Timed GCC Compilation 8.2 Time To Compile GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 800 1600 2400 3200 4000 2729 2719 3761 3667
Timed ImageMagick Compilation Time To Compile OpenBenchmarking.org Seconds, Fewer Is Better Timed ImageMagick Compilation 6.9.0 Time To Compile GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 20 40 60 80 100 SE +/- 0.30, N = 3 SE +/- 0.31, N = 3 SE +/- 0.38, N = 3 SE +/- 0.59, N = 3 86.01 94.42 64.65 63.50
Timed LLVM Compilation Time To Compile OpenBenchmarking.org Seconds, Fewer Is Better Timed LLVM Compilation 6.0.1 Time To Compile GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 140 280 420 560 700 621 638 496 517
C-Ray Total Time - 4K, 16 Rays Per Pixel OpenBenchmarking.org Seconds, Fewer Is Better C-Ray 1.1 Total Time - 4K, 16 Rays Per Pixel GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 30 60 90 120 150 SE +/- 0.04, N = 3 SE +/- 0.03, N = 3 SE +/- 0.20, N = 3 SE +/- 0.15, N = 3 78.42 78.58 156.13 156.18 1. (CC) gcc options: -lm -lpthread -O3
Parallel BZIP2 Compression 256MB File Compression OpenBenchmarking.org Seconds, Fewer Is Better Parallel BZIP2 Compression 1.1.12 256MB File Compression GCC 8.2.0 GCC 9.0.1 1.0485 2.097 3.1455 4.194 5.2425 SE +/- 0.07, N = 4 SE +/- 0.05, N = 3 4.58 4.66 1. (CXX) g++ options: -O2 -pthread -lbz2 -lpthread
Smallpt Global Illumination Renderer; 128 Samples OpenBenchmarking.org Seconds, Fewer Is Better Smallpt 1.0 Global Illumination Renderer; 128 Samples GCC 8.2.0 GCC 9.0.1 4 8 12 16 20 SE +/- 0.02, N = 3 SE +/- 0.14, N = 3 16.79 17.06 1. (CXX) g++ options: -fopenmp -O3
AOBench Size: 2048 x 2048 - Total Time OpenBenchmarking.org Seconds, Fewer Is Better AOBench Size: 2048 x 2048 - Total Time GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 30 60 90 120 150 SE +/- 0.05, N = 3 SE +/- 0.24, N = 3 SE +/- 0.09, N = 3 SE +/- 0.04, N = 3 109 110 141 141 1. (CC) gcc options: -lm -O3
Bullet Physics Engine Test: 3000 Fall OpenBenchmarking.org Seconds, Fewer Is Better Bullet Physics Engine 2.81 Test: 3000 Fall GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 5 10 15 20 25 SE +/- 0.16, N = 3 SE +/- 0.05, N = 3 SE +/- 0.14, N = 3 SE +/- 0.16, N = 3 19.40 19.54 20.37 20.15 -lglut -lGL -lGLU -lglut -lGL -lGLU 1. (CXX) g++ options: -O3 -O2 -rdynamic
Bullet Physics Engine Test: 1000 Stack OpenBenchmarking.org Seconds, Fewer Is Better Bullet Physics Engine 2.81 Test: 1000 Stack GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 6 12 18 24 30 SE +/- 0.22, N = 3 SE +/- 0.08, N = 3 SE +/- 0.08, N = 3 SE +/- 0.19, N = 3 23.81 23.81 25.03 25.04 -lglut -lGL -lGLU -lglut -lGL -lGLU 1. (CXX) g++ options: -O3 -O2 -rdynamic
Bullet Physics Engine Test: 1000 Convex OpenBenchmarking.org Seconds, Fewer Is Better Bullet Physics Engine 2.81 Test: 1000 Convex GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 7 14 21 28 35 SE +/- 0.09, N = 3 SE +/- 0.05, N = 3 SE +/- 0.03, N = 3 SE +/- 0.08, N = 3 28.15 28.39 29.10 29.05 -lglut -lGL -lGLU -lglut -lGL -lGLU 1. (CXX) g++ options: -O3 -O2 -rdynamic
Bullet Physics Engine Test: 136 Ragdolls OpenBenchmarking.org Seconds, Fewer Is Better Bullet Physics Engine 2.81 Test: 136 Ragdolls GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 3 6 9 12 15 SE +/- 0.08, N = 3 SE +/- 0.07, N = 3 SE +/- 0.05, N = 3 SE +/- 0.08, N = 3 11.43 11.36 12.16 12.12 -lglut -lGL -lGLU -lglut -lGL -lGLU 1. (CXX) g++ options: -O3 -O2 -rdynamic
Bullet Physics Engine Test: Prim Trimesh OpenBenchmarking.org Seconds, Fewer Is Better Bullet Physics Engine 2.81 Test: Prim Trimesh GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 0.8933 1.7866 2.6799 3.5732 4.4665 SE +/- 0.03, N = 3 SE +/- 0.02, N = 3 SE +/- 0.04, N = 3 SE +/- 0.03, N = 3 3.81 3.81 3.96 3.97 -lglut -lGL -lGLU -lglut -lGL -lGLU 1. (CXX) g++ options: -O3 -O2 -rdynamic
Bullet Physics Engine Test: Convex Trimesh OpenBenchmarking.org Seconds, Fewer Is Better Bullet Physics Engine 2.81 Test: Convex Trimesh GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 1.314 2.628 3.942 5.256 6.57 SE +/- 0.03, N = 3 SE +/- 0.02, N = 3 SE +/- 0.02, N = 3 SE +/- 0.03, N = 3 5.64 5.64 5.84 5.83 -lglut -lGL -lGLU -lglut -lGL -lGLU 1. (CXX) g++ options: -O3 -O2 -rdynamic
XZ Compression Compressing ubuntu-16.04.3-server-i386.img, Compression Level 9 OpenBenchmarking.org Seconds, Fewer Is Better XZ Compression 5.2.4 Compressing ubuntu-16.04.3-server-i386.img, Compression Level 9 GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 40 80 120 160 200 SE +/- 2.88, N = 4 SE +/- 1.16, N = 3 SE +/- 0.96, N = 3 SE +/- 1.55, N = 3 173 179 184 185 1. (CC) gcc options: -pthread -fvisibility=hidden -O3
Zstd Compression Compressing ubuntu-16.04.3-server-i386.img, Compression Level 19 OpenBenchmarking.org Seconds, Fewer Is Better Zstd Compression 1.3.4 Compressing ubuntu-16.04.3-server-i386.img, Compression Level 19 GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 6 12 18 24 30 SE +/- 0.23, N = 3 SE +/- 0.21, N = 3 SE +/- 0.12, N = 3 SE +/- 0.11, N = 3 22.41 22.63 23.81 23.96 1. (CC) gcc options: -O3 -pthread -lz
dav1d Video Input: Summer Nature 4K OpenBenchmarking.org Seconds, Fewer Is Better dav1d 0.1 Video Input: Summer Nature 4K GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 40 80 120 160 200 SE +/- 0.58, N = 3 SE +/- 0.50, N = 3 SE +/- 0.21, N = 3 SE +/- 0.30, N = 3 184 181 193 192 1. (CC) gcc options: -O3 -pthread
dav1d Video Input: Summer Nature 1080p OpenBenchmarking.org Seconds, Fewer Is Better dav1d 0.1 Video Input: Summer Nature 1080p GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 16 32 48 64 80 SE +/- 0.08, N = 3 SE +/- 0.34, N = 3 SE +/- 0.17, N = 3 SE +/- 0.13, N = 3 68.73 68.23 69.81 69.89 1. (CC) gcc options: -O3 -pthread
FLAC Audio Encoding WAV To FLAC OpenBenchmarking.org Seconds, Fewer Is Better FLAC Audio Encoding 1.3.2 WAV To FLAC GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 14 28 42 56 70 SE +/- 0.16, N = 5 SE +/- 0.04, N = 5 SE +/- 0.09, N = 5 SE +/- 0.10, N = 5 51.04 50.37 60.27 60.89 -fvisibility=hidden -fvisibility=hidden 1. (CXX) g++ options: -O3 -lm
LAME MP3 Encoding WAV To MP3 OpenBenchmarking.org Seconds, Fewer Is Better LAME MP3 Encoding 3.100 WAV To MP3 GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 8 16 24 32 40 SE +/- 0.20, N = 3 SE +/- 0.21, N = 3 SE +/- 0.19, N = 3 SE +/- 0.12, N = 3 29.38 30.46 30.57 33.67 -pipe -pipe 1. (CC) gcc options: -O3 -lm
FFmpeg H.264 HD To NTSC DV OpenBenchmarking.org Seconds, Fewer Is Better FFmpeg 4.0.2 H.264 HD To NTSC DV GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 8 16 24 32 40 SE +/- 0.75, N = 12 SE +/- 0.44, N = 8 SE +/- 0.62, N = 4 SE +/- 0.45, N = 7 36.63 36.38 36.19 35.91 -fno-tree-vectorize -fno-tree-vectorize -Qunused-arguments -mstack-alignment=16 -Qunused-arguments -mstack-alignment=16 1. (CC) gcc options: -lavdevice -lavfilter -lavformat -lavcodec -lswresample -lswscale -lavutil -lm -lxcb -lxcb-shm -lxcb-shape -lxcb-xfixes -pthread -O3 -std=c11 -fomit-frame-pointer -fno-math-errno -fno-signed-zeros -MMD -MF -MT
OpenSSL RSA 4096-bit Performance OpenBenchmarking.org Signs Per Second, More Is Better OpenSSL 1.1.1 RSA 4096-bit Performance GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 500 1000 1500 2000 2500 SE +/- 0.23, N = 3 SE +/- 0.96, N = 3 SE +/- 0.06, N = 3 SE +/- 0.36, N = 3 2364 2368 2333 2336 -Qunused-arguments -Qunused-arguments 1. (CC) gcc options: -pthread -O3 -lssl -lcrypto -ldl
libjpeg-turbo tjbench Test: Decompression Throughput OpenBenchmarking.org Megapixels/sec, More Is Better libjpeg-turbo tjbench 1.5.3 Test: Decompression Throughput GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 15 30 45 60 75 SE +/- 0.02, N = 3 SE +/- 0.01, N = 3 SE +/- 0.11, N = 3 SE +/- 0.03, N = 3 62.27 67.70 67.19 67.80 1. (CC) gcc options: -O3 -lm
CppPerformanceBenchmarks Test: Atol OpenBenchmarking.org Seconds, Fewer Is Better CppPerformanceBenchmarks 9 Test: Atol GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 30 60 90 120 150 SE +/- 0.81, N = 3 SE +/- 0.71, N = 3 SE +/- 0.59, N = 3 SE +/- 0.11, N = 3 143 142 143 142 1. (CXX) g++ options: -O3 -std=c++11
CppPerformanceBenchmarks Test: Ctype OpenBenchmarking.org Seconds, Fewer Is Better CppPerformanceBenchmarks 9 Test: Ctype GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 20 40 60 80 100 SE +/- 0.02, N = 3 SE +/- 0.01, N = 3 SE +/- 0.92, N = 12 SE +/- 0.01, N = 3 85.70 84.93 83.06 82.15 1. (CXX) g++ options: -O3 -std=c++11
CppPerformanceBenchmarks Test: Stepanov Vector OpenBenchmarking.org Seconds, Fewer Is Better CppPerformanceBenchmarks 9 Test: Stepanov Vector GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 40 80 120 160 200 SE +/- 0.02, N = 3 SE +/- 0.01, N = 3 SE +/- 0.01, N = 3 SE +/- 0.02, N = 3 170 170 166 164 1. (CXX) g++ options: -O3 -std=c++11
CppPerformanceBenchmarks Test: Function Objects OpenBenchmarking.org Seconds, Fewer Is Better CppPerformanceBenchmarks 9 Test: Function Objects GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 7 14 21 28 35 SE +/- 0.03, N = 3 SE +/- 0.01, N = 3 SE +/- 0.03, N = 3 SE +/- 0.00, N = 3 28.97 29.02 28.89 29.10 1. (CXX) g++ options: -O3 -std=c++11
CppPerformanceBenchmarks Test: Stepanov Abstraction OpenBenchmarking.org Seconds, Fewer Is Better CppPerformanceBenchmarks 9 Test: Stepanov Abstraction GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 15 30 45 60 75 SE +/- 0.01, N = 3 SE +/- 0.01, N = 3 SE +/- 0.02, N = 3 SE +/- 0.00, N = 3 65.48 65.62 64.43 64.52 1. (CXX) g++ options: -O3 -std=c++11
Redis Test: LPOP OpenBenchmarking.org Requests Per Second, More Is Better Redis 4.0.8 Test: LPOP GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 70K 140K 210K 280K 350K SE +/- 563.58, N = 3 SE +/- 8203.26, N = 9 SE +/- 4784.65, N = 3 SE +/- 10078.57, N = 12 303369 335430 326052 347380 1. (CC) gcc options: -ggdb -rdynamic -lm -ldl -pthread
Redis Test: SADD OpenBenchmarking.org Requests Per Second, More Is Better Redis 4.0.8 Test: SADD GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 70K 140K 210K 280K 350K SE +/- 4075.76, N = 3 SE +/- 7061.07, N = 12 SE +/- 5384.56, N = 3 SE +/- 991.81, N = 3 312119 316431 297902 296772 1. (CC) gcc options: -ggdb -rdynamic -lm -ldl -pthread
Redis Test: LPUSH OpenBenchmarking.org Requests Per Second, More Is Better Redis 4.0.8 Test: LPUSH GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 50K 100K 150K 200K 250K SE +/- 9875.13, N = 9 SE +/- 1416.21, N = 3 SE +/- 3658.26, N = 3 SE +/- 4986.58, N = 10 234390 222818 229757 227467 1. (CC) gcc options: -ggdb -rdynamic -lm -ldl -pthread
Redis Test: GET OpenBenchmarking.org Requests Per Second, More Is Better Redis 4.0.8 Test: GET GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 70K 140K 210K 280K 350K SE +/- 6131.55, N = 12 SE +/- 3587.21, N = 3 SE +/- 7094.61, N = 12 SE +/- 6793.43, N = 12 335269 327054 343826 343477 1. (CC) gcc options: -ggdb -rdynamic -lm -ldl -pthread
Redis Test: SET OpenBenchmarking.org Requests Per Second, More Is Better Redis 4.0.8 Test: SET GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 60K 120K 180K 240K 300K SE +/- 1833.21, N = 3 SE +/- 4440.21, N = 12 SE +/- 6343.19, N = 11 SE +/- 3921.15, N = 12 272504 282048 277030 272753 1. (CC) gcc options: -ggdb -rdynamic -lm -ldl -pthread
Sysbench Test: Memory OpenBenchmarking.org Events Per Second, More Is Better Sysbench 2018-07-28 Test: Memory GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 12M 24M 36M 48M 60M SE +/- 436164.49, N = 3 SE +/- 769437.34, N = 3 SE +/- 103916.06, N = 3 SE +/- 341323.48, N = 3 56788453 56299123 55343486 53144563 1. (CC) gcc options: -pthread -O3 -funroll-loops -ggdb3 -rdynamic -ldl -laio -lm
Sysbench Test: CPU OpenBenchmarking.org Events Per Second, More Is Better Sysbench 2018-07-28 Test: CPU GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 9K 18K 27K 36K 45K SE +/- 13.39, N = 3 SE +/- 9.88, N = 3 SE +/- 7.70, N = 3 SE +/- 14.62, N = 3 40086 40294 40976 40963 1. (CC) gcc options: -pthread -O3 -funroll-loops -ggdb3 -rdynamic -ldl -laio -lm
Xsbench OpenBenchmarking.org Lookups/s, More Is Better Xsbench 2017-07-06 GCC 8.2.0 GCC 9.0.1 600K 1200K 1800K 2400K 3000K SE +/- 1010.34, N = 3 SE +/- 1970.80, N = 3 2748697 2442397 1. (CC) gcc options: -std=gnu99 -fopenmp -O3 -lm
Memcached mcperf Method: Add OpenBenchmarking.org Operations Per Second, More Is Better Memcached mcperf 1.5.10 Method: Add GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 1500 3000 4500 6000 7500 SE +/- 62.93, N = 3 SE +/- 79.37, N = 3 SE +/- 69.03, N = 3 SE +/- 107.61, N = 3 6809 6688 6855 6872 1. (CC) gcc options: -O3 -lm -rdynamic
Memcached mcperf Method: Get OpenBenchmarking.org Operations Per Second, More Is Better Memcached mcperf 1.5.10 Method: Get GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 4K 8K 12K 16K 20K SE +/- 84.88, N = 3 SE +/- 202.75, N = 3 SE +/- 194.25, N = 3 SE +/- 99.23, N = 3 17329 17128 17213 17233 1. (CC) gcc options: -O3 -lm -rdynamic
Memcached mcperf Method: Set OpenBenchmarking.org Operations Per Second, More Is Better Memcached mcperf 1.5.10 Method: Set GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 1500 3000 4500 6000 7500 SE +/- 81.65, N = 3 SE +/- 54.43, N = 3 SE +/- 38.82, N = 3 SE +/- 47.05, N = 3 6781 6613 6843 6756 1. (CC) gcc options: -O3 -lm -rdynamic
Memcached mcperf Method: Append OpenBenchmarking.org Operations Per Second, More Is Better Memcached mcperf 1.5.10 Method: Append GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 1500 3000 4500 6000 7500 SE +/- 47.60, N = 3 SE +/- 37.48, N = 3 SE +/- 58.15, N = 3 SE +/- 36.10, N = 3 6835 6810 6836 6861 1. (CC) gcc options: -O3 -lm -rdynamic
Memcached mcperf Method: Delete OpenBenchmarking.org Operations Per Second, More Is Better Memcached mcperf 1.5.10 Method: Delete GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 4K 8K 12K 16K 20K SE +/- 64.44, N = 3 SE +/- 160.45, N = 3 SE +/- 122.97, N = 3 SE +/- 53.70, N = 3 16987 17311 17375 17263 1. (CC) gcc options: -O3 -lm -rdynamic
Memcached mcperf Method: Prepend OpenBenchmarking.org Operations Per Second, More Is Better Memcached mcperf 1.5.10 Method: Prepend GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 1500 3000 4500 6000 7500 SE +/- 37.92, N = 3 SE +/- 80.65, N = 3 SE +/- 35.73, N = 3 SE +/- 69.18, N = 3 6957 6901 6874 6754 1. (CC) gcc options: -O3 -lm -rdynamic
Memcached mcperf Method: Replace OpenBenchmarking.org Operations Per Second, More Is Better Memcached mcperf 1.5.10 Method: Replace GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 1500 3000 4500 6000 7500 SE +/- 18.75, N = 3 SE +/- 53.85, N = 3 SE +/- 26.22, N = 3 SE +/- 54.11, N = 3 6776 6933 6919 6794 1. (CC) gcc options: -O3 -lm -rdynamic
Apache Benchmark Static Web Page Serving OpenBenchmarking.org Requests Per Second, More Is Better Apache Benchmark 2.4.29 Static Web Page Serving GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 600 1200 1800 2400 3000 SE +/- 10.89, N = 3 SE +/- 6.24, N = 3 SE +/- 1.81, N = 3 SE +/- 1.39, N = 3 2967 2964 2945 2960 1. (CC) gcc options: -shared -fPIC -pthread -O3
Apache Siege Concurrent Users: 200 OpenBenchmarking.org Transactions Per Second, More Is Better Apache Siege 2.4.29 Concurrent Users: 200 GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 5K 10K 15K 20K 25K SE +/- 316.75, N = 3 SE +/- 353.60, N = 5 SE +/- 398.14, N = 3 SE +/- 213.54, N = 3 23431 23156 23215 23508 1. (CC) gcc options: -O3 -lpthread -ldl -lssl -lcrypto
Apache Siege Concurrent Users: 250 OpenBenchmarking.org Transactions Per Second, More Is Better Apache Siege 2.4.29 Concurrent Users: 250 GCC 8.2.0 GCC 9.0.1 Clang 7.0.1 Clang 8.0.0-rc2 5K 10K 15K 20K 25K SE +/- 132.47, N = 3 SE +/- 114.14, N = 3 SE +/- 155.11, N = 3 SE +/- 370.09, N = 3 23373 23455 23473 23382 1. (CC) gcc options: -O3 -lpthread -ldl -lssl -lcrypto
Phoronix Test Suite v10.8.5