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&sor&grs.

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 Benchmarksscimark2: Monte Carloscimark2: Dense LU Matrix Factorizationbuild-php: Time To Compilebuild-apache: Time To Compilec-ray: Total Timescimark2: Compositehimeno: Poisson Pressure Solverscimark2: Jacobi Successive Over-Relaxationbullet: 1000 Stackbullet: 3000 Fallsmallpt: Global Illumination Renderer; 100 Samplesencode-mp3: WAV To MP3bullet: Raytestsbullet: Prim Trimeshbullet: 1000 Convexencode-flac: WAV To FLACbullet: Convex Trimeshpgbench: Buffer Test - Single Thread - Read Writehmmer: Pfam Database Searchstockfish: Total Timescimark2: Sparse Matrix Multiplyredis: SETcompress-7zip: Compress Speed Testpgbench: Buffer Test - Normal Load - Read Writeopenssl: RSA 4096-bit Performanceapache: Static Web Page Servingscimark2: Fast Fourier Transformpgbench: Buffer Test - Heavy Contention - Read Writeredis: GETbullet: 136 RagdollsLLVM Clang 3.7.1LLVM Clang 3.8GCC 5.3.1GCC 6.0.0 20160125627.967731.9216.7919.8725.722531.782236.781446.615.134.512311.472.701.004.585.311.17600.248.7333242538.562146299.50236666637.61678.5348798.85313.857911.953096524.923.05284.077604.3018.6922.2425.942433.581890.251429.855.414.612412.092.771.014.695.311.18592.328.7132922538.512088730.67240576598.18677.2348579.46311.187902.492823390.213.27735.643058.3721.9623.6414.671581.412628.811129.464.614.122110.862.540.944.274.951.13573.408.2932102667.002076119.06230566431.46694.0049743.62316.567922.133112531.882.78737.183077.5141.0543.5814.831573.842604.811127.684.504.012110.612.490.914.324.861.09559.298.2231482610.332178042.15237156421.59693.4049584.51316.537950.753021227.582.74OpenBenchmarking.org

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: 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

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

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

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

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

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

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

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: 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

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

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

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: 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: 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


Phoronix Test Suite v10.8.4