Ubuntu 16.04 LTS Compiler Benchmarks

GCC 5.3.1, GCC 6.0, LLVM Clang 3.7, and LLVM Clang 3.8 compiler benchmarks using the Xenial Xerus packages for Ubuntu 16.04 LTS. Benchmarks by Michael Larabel for a future article on Phoronix.com

HTML result view exported from: https://openbenchmarking.org/result/1602255-GA-UBUNTU16057&grw&sor.

Ubuntu 16.04 LTS Compiler BenchmarksProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionLLVM Clang 3.7.1LLVM Clang 3.8GCC 5.3.1GCC 6.0.0 20160125Intel Xeon E3-1280 v5 @ 4.00GHz (8 Cores)MSI C236A WORKSTATION (MS-7998) v1.0Intel Sky Lake16384MB120GB Samsung SSD 850MSI AMD Radeon R7 370 / R9 270/370 OEM 4096MBRealtek ALC1150DELL P2415QIntel ConnectionUbuntu 16.044.4.0-7-generic (x86_64)Unity 7.4.0X Server 1.17.3radeon 7.6.14.1 Mesa 11.1.2 Gallium 0.4Clang 3.7.1-1ubuntu4ext43840x2160Clang 3.8.0-+rc2-1~exp1ubuntu2GCC 5.3.1 20160222 + clang (Ubuntu 5.3.1-9ubuntu3) 5.3.1 20160222GCC 6.0.0 20160125OpenBenchmarking.orgProcessor Details- Scaling Governor: intel_pstate powersaveCompiler Details- GCC 5.3.1: --build=x86_64-linux-gnu --disable-browser-plugin --disable-vtable-verify --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --enable-libmpx --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-arch-directory=amd64 --with-default-libstdcxx-abi=new --with-multilib-list=m32,m64,mx32 --with-tune=generic -v - GCC 6.0.0 20160125: --build=x86_64-linux-gnu --disable-browser-plugin --disable-nls --disable-vtable-verify --disable-werror --enable-checking=yes --enable-clocale=gnu --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,ada,c++,java,go,fortran,objc,obj-c++ --enable-libmpx --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-objc-gc --enable-plugin --enable-shared --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-arch-directory=amd64 --with-default-libstdcxx-abi=new --with-multilib-list=m32,m64,mx32 --with-tune=generic -v

Ubuntu 16.04 LTS Compiler Benchmarksbullet: Raytestsbullet: 3000 Fallbullet: 1000 Stackbullet: 1000 Convexbullet: 136 Ragdollsbullet: Prim Trimeshbullet: Convex Trimeshscimark2: Compositescimark2: Monte Carloscimark2: Fast Fourier Transformscimark2: Sparse Matrix Multiplyscimark2: Dense LU Matrix Factorizationscimark2: Jacobi Successive Over-Relaxationencode-flac: WAV To FLACencode-mp3: WAV To MP3hmmer: Pfam Database Searchhimeno: Poisson Pressure Solverbuild-apache: Time To Compilestockfish: Total Timecompress-7zip: Compress Speed Testbuild-php: Time To Compilec-ray: Total Timesmallpt: Global Illumination Renderer; 100 Samplesapache: Static Web Page Servingopenssl: RSA 4096-bit Performanceredis: GETredis: SETpgbench: Buffer Test - Normal Load - Read Writepgbench: Buffer Test - Single Thread - Read Writepgbench: Buffer Test - Heavy Contention - Read WriteLLVM Clang 3.7.1LLVM Clang 3.8GCC 5.3.1GCC 6.0.0 201601252.704.515.134.583.051.001.172531.78627.96313.852538.567731.921446.615.3111.478.732236.7819.8733242366616.7925.722348798.85678.533096524.922146299.506637.61600.247911.952.774.615.414.693.271.011.182433.58284.07311.182538.517604.301429.855.3112.098.711890.2522.2432922405718.6925.942448579.46677.232823390.212088730.676598.18592.327902.492.544.124.614.272.780.941.131581.41735.64316.562667.003058.371129.464.9510.868.292628.8123.6432102305621.9614.672149743.62694.003112531.882076119.066431.46573.407922.132.494.014.504.322.740.911.091573.84737.18316.532610.333077.511127.684.8610.618.222604.8143.5831482371541.0514.832149584.51693.403021227.582178042.156421.59559.297950.75OpenBenchmarking.org

Bullet Physics Engine

Test: Raytests

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: RaytestsGCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.7.1LLVM Clang 3.80.62331.24661.86992.49323.1165SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 32.492.542.702.771. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: 3000 Fall

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 3000 FallGCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.7.1LLVM Clang 3.81.03732.07463.11194.14925.1865SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.03, N = 3SE +/- 0.02, N = 34.014.124.514.611. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: 1000 Stack

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 1000 StackGCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.7.1LLVM Clang 3.81.21732.43463.65194.86926.0865SE +/- 0.02, N = 3SE +/- 0.02, N = 3SE +/- 0.02, N = 3SE +/- 0.16, N = 34.504.615.135.411. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: 1000 Convex

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 1000 ConvexGCC 5.3.1GCC 6.0.0 20160125LLVM Clang 3.7.1LLVM Clang 3.81.05532.11063.16594.22125.2765SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.04, N = 3SE +/- 0.01, N = 34.274.324.584.691. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: 136 Ragdolls

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 136 RagdollsGCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.7.1LLVM Clang 3.80.73581.47162.20742.94323.679SE +/- 0.02, N = 3SE +/- 0.03, N = 3SE +/- 0.04, N = 3SE +/- 0.21, N = 32.742.783.053.271. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: Prim Trimesh

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: Prim TrimeshGCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.7.1LLVM Clang 3.80.22730.45460.68190.90921.1365SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 30.910.941.001.011. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: Convex Trimesh

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: Convex TrimeshGCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.7.1LLVM Clang 3.80.26550.5310.79651.0621.3275SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 31.091.131.171.181. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

SciMark

Computational Test: Composite

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: CompositeLLVM Clang 3.7.1LLVM Clang 3.8GCC 5.3.1GCC 6.0.0 201601255001000150020002500SE +/- 1.81, N = 4SE +/- 6.89, N = 4SE +/- 1.60, N = 4SE +/- 1.20, N = 42531.782433.581581.411573.841. (CXX) g++ options: -O3 -march=native

SciMark

Computational Test: Monte Carlo

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Monte CarloGCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.7.1LLVM Clang 3.8160320480640800SE +/- 1.66, N = 4SE +/- 2.36, N = 4SE +/- 1.44, N = 4SE +/- 1.94, N = 4737.18735.64627.96284.071. (CXX) g++ options: -O3 -march=native

SciMark

Computational Test: Fast Fourier Transform

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Fast Fourier TransformGCC 5.3.1GCC 6.0.0 20160125LLVM Clang 3.7.1LLVM Clang 3.870140210280350SE +/- 0.64, N = 4SE +/- 0.71, N = 4SE +/- 1.32, N = 4SE +/- 1.25, N = 4316.56316.53313.85311.181. (CXX) g++ options: -O3 -march=native

SciMark

Computational Test: Sparse Matrix Multiply

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Sparse Matrix MultiplyGCC 5.3.1GCC 6.0.0 20160125LLVM Clang 3.7.1LLVM Clang 3.86001200180024003000SE +/- 3.08, N = 4SE +/- 2.94, N = 4SE +/- 5.98, N = 4SE +/- 12.26, N = 42667.002610.332538.562538.511. (CXX) g++ options: -O3 -march=native

SciMark

Computational Test: Dense LU Matrix Factorization

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Dense LU Matrix FactorizationLLVM Clang 3.7.1LLVM Clang 3.8GCC 6.0.0 20160125GCC 5.3.117003400510068008500SE +/- 21.73, N = 4SE +/- 37.88, N = 4SE +/- 6.30, N = 4SE +/- 4.62, N = 47731.927604.303077.513058.371. (CXX) g++ options: -O3 -march=native

SciMark

Computational Test: Jacobi Successive Over-Relaxation

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Jacobi Successive Over-RelaxationLLVM Clang 3.7.1LLVM Clang 3.8GCC 5.3.1GCC 6.0.0 2016012530060090012001500SE +/- 9.02, N = 4SE +/- 5.76, N = 4SE +/- 3.14, N = 4SE +/- 1.05, N = 41446.611429.851129.461127.681. (CXX) g++ options: -O3 -march=native

FLAC Audio Encoding

WAV To FLAC

OpenBenchmarking.orgSeconds, Fewer Is BetterFLAC Audio Encoding 1.3.1WAV To FLACGCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.7.1LLVM Clang 3.81.1972.3943.5914.7885.985SE +/- 0.00, N = 5SE +/- 0.00, N = 5SE +/- 0.02, N = 5SE +/- 0.00, N = 54.864.955.315.31-fvisibility=hidden-fvisibility=hidden1. (CXX) g++ options: -O3 -march=native -lm

LAME MP3 Encoding

WAV To MP3

OpenBenchmarking.orgSeconds, Fewer Is BetterLAME MP3 Encoding 3.99.3WAV To MP3GCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.7.1LLVM Clang 3.83691215SE +/- 0.01, N = 5SE +/- 0.01, N = 5SE +/- 0.01, N = 5SE +/- 0.04, N = 510.6110.8611.4712.091. (CC) gcc options: -pipe -O3 -march=native -lm

Timed HMMer Search

Pfam Database Search

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed HMMer Search 2.3.2Pfam Database SearchGCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.8LLVM Clang 3.7.1246810SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 38.228.298.718.731. (CC) gcc options: -O3 -march=native -pthread -lhmmer -lsquid -lm

Himeno Benchmark

Poisson Pressure Solver

OpenBenchmarking.orgMFLOPS, More Is BetterHimeno Benchmark 3.0Poisson Pressure SolverGCC 5.3.1GCC 6.0.0 20160125LLVM Clang 3.7.1LLVM Clang 3.86001200180024003000SE +/- 15.39, N = 3SE +/- 10.87, N = 3SE +/- 7.01, N = 3SE +/- 0.86, N = 32628.812604.812236.781890.251. (CC) gcc options: -O3 -march=native -mavx2

Timed Apache Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed Apache Compilation 2.4.7Time To CompileLLVM Clang 3.7.1LLVM Clang 3.8GCC 5.3.1GCC 6.0.0 201601251020304050SE +/- 0.03, N = 3SE +/- 0.09, N = 3SE +/- 0.05, N = 3SE +/- 0.07, N = 319.8722.2423.6443.58

Stockfish

Total Time

OpenBenchmarking.orgms, Fewer Is BetterStockfish 2014-11-26Total TimeGCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.8LLVM Clang 3.7.17001400210028003500SE +/- 9.94, N = 3SE +/- 4.36, N = 3SE +/- 5.36, N = 3SE +/- 5.13, N = 33148321032923324-flto-flto1. (CXX) g++ options: -lpthread -O3 -march=native -fno-exceptions -fno-rtti -ansi -pedantic -msse -msse3 -mpopcnt

7-Zip Compression

Compress Speed Test

OpenBenchmarking.orgMIPS, More Is Better7-Zip Compression 9.20.1Compress Speed TestLLVM Clang 3.8GCC 6.0.0 20160125LLVM Clang 3.7.1GCC 5.3.15K10K15K20K25KSE +/- 110.79, N = 3SE +/- 56.53, N = 3SE +/- 178.26, N = 3SE +/- 229.23, N = 3240572371523666230561. (CXX) g++ options: -pipe -lpthread

Timed PHP Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed PHP Compilation 5.2.9Time To CompileLLVM Clang 3.7.1LLVM Clang 3.8GCC 5.3.1GCC 6.0.0 20160125918273645SE +/- 0.05, N = 3SE +/- 0.05, N = 3SE +/- 0.05, N = 3SE +/- 0.04, N = 316.7918.6921.9641.05-lpthread1. (CC) gcc options: -O3 -march=native -pedantic -ldl -lm

C-Ray

Total Time

OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total TimeGCC 5.3.1GCC 6.0.0 20160125LLVM Clang 3.7.1LLVM Clang 3.8612182430SE +/- 0.03, N = 3SE +/- 0.02, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 314.6714.8325.7225.941. (CC) gcc options: -lm -lpthread -O3 -march=native

Smallpt

Global Illumination Renderer; 100 Samples

OpenBenchmarking.orgSeconds, Fewer Is BetterSmallpt 1.0Global Illumination Renderer; 100 SamplesGCC 5.3.1GCC 6.0.0 20160125LLVM Clang 3.7.1LLVM Clang 3.8612182430SE +/- 0.00, N = 3SE +/- 0.33, N = 3SE +/- 0.33, N = 3SE +/- 0.00, N = 3212123241. (CXX) g++ options: -fopenmp -O3 -march=native

Apache Benchmark

Static Web Page Serving

OpenBenchmarking.orgRequests Per Second, More Is BetterApache Benchmark 2.4.7Static Web Page ServingGCC 5.3.1GCC 6.0.0 20160125LLVM Clang 3.7.1LLVM Clang 3.811K22K33K44K55KSE +/- 33.52, N = 3SE +/- 78.30, N = 3SE +/- 247.92, N = 3SE +/- 283.69, N = 349743.6249584.5148798.8548579.461. (CC) gcc options: -shared -fPIC -pthread -O3 -march=native

OpenSSL

RSA 4096-bit Performance

OpenBenchmarking.orgSigns Per Second, More Is BetterOpenSSL 1.0.1gRSA 4096-bit PerformanceGCC 5.3.1GCC 6.0.0 20160125LLVM Clang 3.7.1LLVM Clang 3.8150300450600750SE +/- 0.10, N = 3SE +/- 0.15, N = 3SE +/- 0.72, N = 3SE +/- 0.69, N = 3694.00693.40678.53677.231. (CC) gcc options: -m64 -O3 -lssl -lcrypto -ldl

Redis

Test: GET

OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: GETGCC 5.3.1LLVM Clang 3.7.1GCC 6.0.0 20160125LLVM Clang 3.8700K1400K2100K2800K3500KSE +/- 133050.46, N = 6SE +/- 29057.84, N = 3SE +/- 108149.76, N = 6SE +/- 97365.18, N = 63112531.883096524.923021227.582823390.21-std=gnu99 -pipe -g3 -O3 -funroll-loops -march=native1. (CC) gcc options: -ggdb -rdynamic -lm -pthread -ldl

Redis

Test: SET

OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: SETGCC 6.0.0 20160125LLVM Clang 3.7.1LLVM Clang 3.8GCC 5.3.1500K1000K1500K2000K2500KSE +/- 45034.71, N = 6SE +/- 20142.16, N = 3SE +/- 32867.27, N = 3SE +/- 31524.64, N = 42178042.152146299.502088730.672076119.06-std=gnu99 -pipe -g3 -O3 -funroll-loops -march=native1. (CC) gcc options: -ggdb -rdynamic -lm -pthread -ldl

PostgreSQL pgbench

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

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 9.4.3Scaling: Buffer Test - Test: Normal Load - Mode: Read WriteLLVM Clang 3.7.1LLVM Clang 3.8GCC 5.3.1GCC 6.0.0 2016012514002800420056007000SE +/- 117.87, N = 3SE +/- 66.57, N = 3SE +/- 75.13, N = 3SE +/- 93.15, N = 36637.616598.186431.466421.59-pthreads -mthreads-pthreads -mthreads1. (CC) gcc options: -fno-strict-aliasing -fwrapv -O3 -march=native -pthread -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

PostgreSQL pgbench

Scaling: Buffer Test - Test: Single Thread - Mode: Read Write

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 9.4.3Scaling: Buffer Test - Test: Single Thread - Mode: Read WriteLLVM Clang 3.7.1LLVM Clang 3.8GCC 5.3.1GCC 6.0.0 20160125130260390520650SE +/- 10.18, N = 4SE +/- 2.91, N = 3SE +/- 6.79, N = 3SE +/- 4.20, N = 3600.24592.32573.40559.29-pthreads -mthreads-pthreads -mthreads1. (CC) gcc options: -fno-strict-aliasing -fwrapv -O3 -march=native -pthread -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

PostgreSQL pgbench

Scaling: Buffer Test - Test: Heavy Contention - Mode: Read Write

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 9.4.3Scaling: Buffer Test - Test: Heavy Contention - Mode: Read WriteGCC 6.0.0 20160125GCC 5.3.1LLVM Clang 3.7.1LLVM Clang 3.82K4K6K8K10KSE +/- 38.92, N = 3SE +/- 61.24, N = 3SE +/- 39.32, N = 3SE +/- 35.36, N = 37950.757922.137911.957902.49-pthreads -mthreads-pthreads -mthreads1. (CC) gcc options: -fno-strict-aliasing -fwrapv -O3 -march=native -pthread -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm


Phoronix Test Suite v10.8.5