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 LLVM Clang 3.7.1: Processor: Intel Xeon E3-1280 v5 @ 4.00GHz (8 Cores), Motherboard: MSI C236A WORKSTATION (MS-7998) v1.0, Chipset: Intel Sky Lake, Memory: 16384MB, Disk: 120GB Samsung SSD 850, Graphics: MSI AMD Radeon R7 370 / R9 270/370 OEM 4096MB, Audio: Realtek ALC1150, Monitor: DELL P2415Q, Network: Intel Connection OS: Ubuntu 16.04, Kernel: 4.4.0-7-generic (x86_64), Desktop: Unity 7.4.0, Display Server: X Server 1.17.3, Display Driver: radeon 7.6.1, OpenGL: 4.1 Mesa 11.1.2 Gallium 0.4, Compiler: Clang 3.7.1-1ubuntu4, File-System: ext4, Screen Resolution: 3840x2160 LLVM Clang 3.8: Processor: Intel Xeon E3-1280 v5 @ 4.00GHz (8 Cores), Motherboard: MSI C236A WORKSTATION (MS-7998) v1.0, Chipset: Intel Sky Lake, Memory: 16384MB, Disk: 120GB Samsung SSD 850, Graphics: MSI AMD Radeon R7 370 / R9 270/370 OEM 4096MB, Audio: Realtek ALC1150, Monitor: DELL P2415Q, Network: Intel Connection OS: Ubuntu 16.04, Kernel: 4.4.0-7-generic (x86_64), Desktop: Unity 7.4.0, Display Server: X Server 1.17.3, Display Driver: radeon 7.6.1, OpenGL: 4.1 Mesa 11.1.2 Gallium 0.4, Compiler: Clang 3.8.0-+rc2-1~exp1ubuntu2, File-System: ext4, Screen Resolution: 3840x2160 GCC 5.3.1: Processor: Intel Xeon E3-1280 v5 @ 4.00GHz (8 Cores), Motherboard: MSI C236A WORKSTATION (MS-7998) v1.0, Chipset: Intel Sky Lake, Memory: 16384MB, Disk: 120GB Samsung SSD 850, Graphics: MSI AMD Radeon R7 370 / R9 270/370 OEM 4096MB, Audio: Realtek ALC1150, Monitor: DELL P2415Q, Network: Intel Connection OS: Ubuntu 16.04, Kernel: 4.4.0-7-generic (x86_64), Desktop: Unity 7.4.0, Display Server: X Server 1.17.3, Display Driver: radeon 7.6.1, OpenGL: 4.1 Mesa 11.1.2 Gallium 0.4, Compiler: GCC 5.3.1 20160222 + clang (Ubuntu 5.3.1-9ubuntu3) 5.3.1 20160222, File-System: ext4, Screen Resolution: 3840x2160 GCC 6.0.0 20160125: Processor: Intel Xeon E3-1280 v5 @ 4.00GHz (8 Cores), Motherboard: MSI C236A WORKSTATION (MS-7998) v1.0, Chipset: Intel Sky Lake, Memory: 16384MB, Disk: 120GB Samsung SSD 850, Graphics: MSI AMD Radeon R7 370 / R9 270/370 OEM 4096MB, Audio: Realtek ALC1150, Monitor: DELL P2415Q, Network: Intel Connection OS: Ubuntu 16.04, Kernel: 4.4.0-7-generic (x86_64), Desktop: Unity 7.4.0, Display Server: X Server 1.17.3, Display Driver: radeon 7.6.1, OpenGL: 4.1 Mesa 11.1.2 Gallium 0.4, Compiler: GCC 6.0.0 20160125, File-System: ext4, Screen Resolution: 3840x2160 Timed HMMer Search 2.3.2 Pfam Database Search Seconds < Lower Is Better LLVM Clang 3.7.1 ... 8.73 |==================================================== LLVM Clang 3.8 ..... 8.71 |==================================================== GCC 5.3.1 .......... 8.29 |================================================= GCC 6.0.0 20160125 . 8.22 |================================================= SciMark 2.0 Computational Test: Composite Mflops > Higher Is Better LLVM Clang 3.7.1 ... 2531.78 |================================================= LLVM Clang 3.8 ..... 2433.58 |=============================================== GCC 5.3.1 .......... 1581.41 |=============================== GCC 6.0.0 20160125 . 1573.84 |============================== SciMark 2.0 Computational Test: Monte Carlo Mflops > Higher Is Better LLVM Clang 3.7.1 ... 627.96 |=========================================== LLVM Clang 3.8 ..... 284.07 |=================== GCC 5.3.1 .......... 735.64 |================================================== GCC 6.0.0 20160125 . 737.18 |================================================== SciMark 2.0 Computational Test: Fast Fourier Transform Mflops > Higher Is Better LLVM Clang 3.7.1 ... 313.85 |================================================== LLVM Clang 3.8 ..... 311.18 |================================================= GCC 5.3.1 .......... 316.56 |================================================== GCC 6.0.0 20160125 . 316.53 |================================================== SciMark 2.0 Computational Test: Sparse Matrix Multiply Mflops > Higher Is Better LLVM Clang 3.7.1 ... 2538.56 |=============================================== LLVM Clang 3.8 ..... 2538.51 |=============================================== GCC 5.3.1 .......... 2667.00 |================================================= GCC 6.0.0 20160125 . 2610.33 |================================================ SciMark 2.0 Computational Test: Dense LU Matrix Factorization Mflops > Higher Is Better LLVM Clang 3.7.1 ... 7731.92 |================================================= LLVM Clang 3.8 ..... 7604.30 |================================================ GCC 5.3.1 .......... 3058.37 |=================== GCC 6.0.0 20160125 . 3077.51 |==================== SciMark 2.0 Computational Test: Jacobi Successive Over-Relaxation Mflops > Higher Is Better LLVM Clang 3.7.1 ... 1446.61 |================================================= LLVM Clang 3.8 ..... 1429.85 |================================================ GCC 5.3.1 .......... 1129.46 |====================================== GCC 6.0.0 20160125 . 1127.68 |====================================== Himeno Benchmark 3.0 Poisson Pressure Solver MFLOPS > Higher Is Better LLVM Clang 3.7.1 ... 2236.78 |========================================== LLVM Clang 3.8 ..... 1890.25 |=================================== GCC 5.3.1 .......... 2628.81 |================================================= GCC 6.0.0 20160125 . 2604.81 |================================================= 7-Zip Compression 9.20.1 Compress Speed Test MIPS > Higher Is Better LLVM Clang 3.7.1 ... 23666 |================================================== LLVM Clang 3.8 ..... 24057 |=================================================== GCC 5.3.1 .......... 23056 |================================================= GCC 6.0.0 20160125 . 23715 |================================================== Timed Apache Compilation 2.4.7 Time To Compile Seconds < Lower Is Better LLVM Clang 3.7.1 ... 19.87 |======================= LLVM Clang 3.8 ..... 22.24 |========================== GCC 5.3.1 .......... 23.64 |============================ GCC 6.0.0 20160125 . 43.58 |=================================================== Timed PHP Compilation 5.2.9 Time To Compile Seconds < Lower Is Better LLVM Clang 3.7.1 ... 16.79 |===================== LLVM Clang 3.8 ..... 18.69 |======================= GCC 5.3.1 .......... 21.96 |=========================== GCC 6.0.0 20160125 . 41.05 |=================================================== C-Ray 1.1 Total Time Seconds < Lower Is Better LLVM Clang 3.7.1 ... 25.72 |=================================================== LLVM Clang 3.8 ..... 25.94 |=================================================== GCC 5.3.1 .......... 14.67 |============================= GCC 6.0.0 20160125 . 14.83 |============================= Smallpt 1.0 Global Illumination Renderer; 100 Samples Seconds < Lower Is Better LLVM Clang 3.7.1 ... 23 |==================================================== LLVM Clang 3.8 ..... 24 |====================================================== GCC 5.3.1 .......... 21 |=============================================== GCC 6.0.0 20160125 . 21 |=============================================== Stockfish 2014-11-26 Total Time ms < Lower Is Better LLVM Clang 3.7.1 ... 3324 |==================================================== LLVM Clang 3.8 ..... 3292 |=================================================== GCC 5.3.1 .......... 3210 |================================================== GCC 6.0.0 20160125 . 3148 |================================================= Bullet Physics Engine 2.81 Test: Raytests Seconds < Lower Is Better LLVM Clang 3.7.1 ... 2.70 |=================================================== LLVM Clang 3.8 ..... 2.77 |==================================================== GCC 5.3.1 .......... 2.54 |================================================ GCC 6.0.0 20160125 . 2.49 |=============================================== Bullet Physics Engine 2.81 Test: 3000 Fall Seconds < Lower Is Better LLVM Clang 3.7.1 ... 4.51 |=================================================== LLVM Clang 3.8 ..... 4.61 |==================================================== GCC 5.3.1 .......... 4.12 |============================================== GCC 6.0.0 20160125 . 4.01 |============================================= Bullet Physics Engine 2.81 Test: 1000 Stack Seconds < Lower Is Better LLVM Clang 3.7.1 ... 5.13 |================================================= LLVM Clang 3.8 ..... 5.41 |==================================================== GCC 5.3.1 .......... 4.61 |============================================ GCC 6.0.0 20160125 . 4.50 |=========================================== Bullet Physics Engine 2.81 Test: 1000 Convex Seconds < Lower Is Better LLVM Clang 3.7.1 ... 4.58 |=================================================== LLVM Clang 3.8 ..... 4.69 |==================================================== GCC 5.3.1 .......... 4.27 |=============================================== GCC 6.0.0 20160125 . 4.32 |================================================ Bullet Physics Engine 2.81 Test: 136 Ragdolls Seconds < Lower Is Better LLVM Clang 3.7.1 ... 3.05 |================================================= LLVM Clang 3.8 ..... 3.27 |==================================================== GCC 5.3.1 .......... 2.78 |============================================ GCC 6.0.0 20160125 . 2.74 |============================================ Bullet Physics Engine 2.81 Test: Prim Trimesh Seconds < Lower Is Better LLVM Clang 3.7.1 ... 1.00 |=================================================== LLVM Clang 3.8 ..... 1.01 |==================================================== GCC 5.3.1 .......... 0.94 |================================================ GCC 6.0.0 20160125 . 0.91 |=============================================== Bullet Physics Engine 2.81 Test: Convex Trimesh Seconds < Lower Is Better LLVM Clang 3.7.1 ... 1.17 |==================================================== LLVM Clang 3.8 ..... 1.18 |==================================================== GCC 5.3.1 .......... 1.13 |================================================== GCC 6.0.0 20160125 . 1.09 |================================================ FLAC Audio Encoding 1.3.1 WAV To FLAC Seconds < Lower Is Better LLVM Clang 3.8 ..... 5.32 |==================================================== LLVM Clang 3.7.1 ... 5.31 |==================================================== LLVM Clang 3.8 ..... 5.31 |==================================================== GCC 5.3.1 .......... 4.95 |================================================ GCC 6.0.0 20160125 . 4.86 |================================================ LAME MP3 Encoding 3.99.3 WAV To MP3 Seconds < Lower Is Better LLVM Clang 3.7.1 ... 11.47 |================================================ LLVM Clang 3.8 ..... 12.09 |=================================================== GCC 5.3.1 .......... 10.86 |============================================== GCC 6.0.0 20160125 . 10.61 |============================================= OpenSSL 1.0.1g RSA 4096-bit Performance Signs Per Second > Higher Is Better LLVM Clang 3.7.1 ... 678.53 |================================================= LLVM Clang 3.8 ..... 677.23 |================================================= GCC 5.3.1 .......... 694.00 |================================================== GCC 6.0.0 20160125 . 693.40 |================================================== PostgreSQL pgbench 9.4.3 Scaling: Buffer Test - Test: Normal Load - Mode: Read Write TPS > Higher Is Better LLVM Clang 3.7.1 ... 6637.61 |================================================= LLVM Clang 3.8 ..... 6598.18 |================================================= GCC 5.3.1 .......... 6431.46 |=============================================== GCC 6.0.0 20160125 . 6421.59 |=============================================== PostgreSQL pgbench 9.4.3 Scaling: Buffer Test - Test: Single Thread - Mode: Read Write TPS > Higher Is Better LLVM Clang 3.7.1 ... 600.24 |================================================== LLVM Clang 3.8 ..... 592.32 |================================================= GCC 5.3.1 .......... 573.40 |================================================ GCC 6.0.0 20160125 . 559.29 |=============================================== PostgreSQL pgbench 9.4.3 Scaling: Buffer Test - Test: Heavy Contention - Mode: Read Write TPS > Higher Is Better LLVM Clang 3.7.1 ... 7911.95 |================================================= LLVM Clang 3.8 ..... 7902.49 |================================================= GCC 5.3.1 .......... 7922.13 |================================================= GCC 6.0.0 20160125 . 7950.75 |================================================= Redis 3.0.1 Test: GET Requests Per Second > Higher Is Better LLVM Clang 3.7.1 ... 3096524.92 |============================================== LLVM Clang 3.8 ..... 2823390.21 |========================================== GCC 5.3.1 .......... 3112531.88 |============================================== GCC 6.0.0 20160125 . 3021227.58 |============================================= Redis 3.0.1 Test: SET Requests Per Second > Higher Is Better LLVM Clang 3.7.1 ... 2146299.50 |============================================= LLVM Clang 3.8 ..... 2088730.67 |============================================ GCC 5.3.1 .......... 2076119.06 |============================================ GCC 6.0.0 20160125 . 2178042.15 |============================================== Apache Benchmark 2.4.7 Static Web Page Serving Requests Per Second > Higher Is Better LLVM Clang 3.7.1 ... 48798.85 |=============================================== LLVM Clang 3.8 ..... 48579.46 |=============================================== GCC 5.3.1 .......... 49743.62 |================================================ GCC 6.0.0 20160125 . 49584.51 |================================================