GCC + LLVM Clang Benchmarks Threadripper 2990WX AMD Ryzen Threadripper 2990WX 32-Core testing with LLVM Clang and GCC compilers. Benchmarks for a future article on Phoronix. GCC 7.3.0: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1402 BIOS), Chipset: AMD Family 17h, Memory: 32768MB, Disk: Samsung SSD 970 EVO 500GB, Graphics: AMD Radeon RX Vega 8192MB, Audio: Realtek ALC1220, Monitor: ASUS VP28U, Network: Intel I211 Gigabit Connection + Qualcomm Atheros QCA6174 802.11ac Wireless OS: Ubuntu 18.04, Kernel: 4.18.0-999-generic (x86_64) 20180818, Desktop: GNOME Shell 3.28.2, Display Server: X Server 1.19.6, Display Driver: amdgpu 18.0.1, OpenGL: 4.5 Mesa 18.0.5 (LLVM 6.0.0), Compiler: GCC 7.3.0, File-System: ext4, Screen Resolution: 3840x2160 GCC 8.2.0: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1402 BIOS), Chipset: AMD Family 17h, Memory: 32768MB, Disk: Samsung SSD 970 EVO 500GB, Graphics: AMD Radeon RX Vega 8192MB, Audio: Realtek ALC1220, Monitor: ASUS VP28U, Network: Intel I211 Gigabit Connection + Qualcomm Atheros QCA6174 802.11ac Wireless OS: Ubuntu 18.04, Kernel: 4.18.0-999-generic (x86_64) 20180818, Desktop: GNOME Shell 3.28.2, Display Server: X Server 1.19.6, Display Driver: amdgpu 18.0.1, OpenGL: 4.5 Mesa 18.0.5 (LLVM 6.0.0), Compiler: GCC 8.2.0, File-System: ext4, Screen Resolution: 3840x2160 GCC 9.0.0 20180819: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1402 BIOS), Chipset: AMD Family 17h, Memory: 32768MB, Disk: Samsung SSD 970 EVO 500GB, Graphics: AMD Radeon RX Vega 8192MB, Audio: Realtek ALC1220, Monitor: ASUS VP28U, Network: Intel I211 Gigabit Connection + Qualcomm Atheros QCA6174 802.11ac Wireless OS: Ubuntu 18.04, Kernel: 4.18.0-999-generic (x86_64) 20180818, Desktop: GNOME Shell 3.28.2, Display Server: X Server 1.19.6, Display Driver: amdgpu 18.0.1, OpenGL: 4.5 Mesa 18.0.5 (LLVM 6.0.0), Compiler: GCC 9.0.0 20180819, File-System: ext4, Screen Resolution: 3840x2160 Clang 6.0.1: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1402 BIOS), Chipset: AMD Family 17h, Memory: 32768MB, Disk: Samsung SSD 970 EVO 500GB, Graphics: AMD Radeon RX Vega 8192MB, Audio: Realtek ALC1220, Monitor: ASUS VP28U, Network: Intel I211 Gigabit Connection + Qualcomm Atheros QCA6174 802.11ac Wireless OS: Ubuntu 18.04, Kernel: 4.18.0-999-generic (x86_64) 20180818, Desktop: GNOME Shell 3.28.2, Display Server: X Server 1.19.6, Display Driver: amdgpu 18.0.1, OpenGL: 4.5 Mesa 18.0.5 (LLVM 6.0.0), Compiler: Clang 6.0.1-svn334776-1~exp1~20180817181737.95, File-System: ext4, Screen Resolution: 3840x2160 Clang 8.0 20180820: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1402 BIOS), Chipset: AMD Family 17h, Memory: 32768MB, Disk: Samsung SSD 970 EVO 500GB, Graphics: AMD Radeon RX Vega 8192MB, Audio: Realtek ALC1220, Monitor: ASUS VP28U, Network: Intel I211 Gigabit Connection + Qualcomm Atheros QCA6174 802.11ac Wireless OS: Ubuntu 18.04, Kernel: 4.18.0-999-generic (x86_64) 20180818, Desktop: GNOME Shell 3.28.2, Display Server: X Server 1.19.6, Display Driver: amdgpu 18.0.1, OpenGL: 4.5 Mesa 18.0.5 (LLVM 6.0.0), Compiler: Clang 8.0.0-svn340182-1~exp1+0~20180820164539.450~1.gbp681860, File-System: ext4, Screen Resolution: 3840x2160 SQLite 3.22 Timed SQLite Insertions Seconds < Lower Is Better GCC 7.3.0 .......... 35.87 |=================================================== GCC 8.2.0 .......... 35.57 |=================================================== GCC 9.0.0 20180819 . 35.62 |=================================================== Clang 6.0.1 ........ 35.57 |=================================================== Clang 8.0 20180820 . 35.59 |=================================================== Tinymembench 2018-05-28 Standard Memcpy MB/s > Higher Is Better GCC 7.3.0 .......... 16319.80 |=============================================== GCC 8.2.0 .......... 16211.50 |=============================================== GCC 9.0.0 20180819 . 16662.60 |================================================ Tinymembench 2018-05-28 Standard Memset MB/s > Higher Is Better GCC 7.3.0 .......... 12676.80 |================================================ GCC 8.2.0 .......... 12727.50 |================================================ GCC 9.0.0 20180819 . 12720.30 |================================================ PolyBench-C 4.2 Test: Covariance Computation Seconds < Lower Is Better GCC 7.3.0 .......... 4.19 |==================================================== GCC 8.2.0 .......... 4.18 |==================================================== GCC 9.0.0 20180819 . 4.17 |==================================================== Clang 6.0.1 ........ 4.21 |==================================================== Clang 8.0 20180820 . 4.18 |==================================================== PolyBench-C 4.2 Test: Correlation Computation Seconds < Lower Is Better GCC 7.3.0 .......... 4.23 |==================================================== GCC 8.2.0 .......... 4.23 |==================================================== GCC 9.0.0 20180819 . 4.18 |=================================================== Clang 6.0.1 ........ 4.18 |=================================================== Clang 8.0 20180820 . 4.19 |==================================================== PolyBench-C 4.2 Test: 3 Matrix Multiplications Seconds < Lower Is Better GCC 7.3.0 .......... 3.98 |==================================================== GCC 8.2.0 .......... 3.17 |========================================= GCC 9.0.0 20180819 . 2.76 |==================================== Clang 6.0.1 ........ 2.72 |==================================== Clang 8.0 20180820 . 2.81 |===================================== FFTW 3.3.6 Build: Stock - Size: 2D FFT Size 4096 Mflops > Higher Is Better GCC 7.3.0 .......... 6491.10 |================================================ GCC 8.2.0 .......... 6612.37 |================================================= GCC 9.0.0 20180819 . 6654.93 |================================================= Clang 6.0.1 ........ 6022.73 |============================================ Clang 8.0 20180820 . 6093.93 |============================================= FFTW 3.3.6 Build: Float + SSE - Size: 2D FFT Size 4096 Mflops > Higher Is Better GCC 7.3.0 .......... 16539 |=================================================== GCC 8.2.0 .......... 15576 |================================================ GCC 9.0.0 20180819 . 15888 |================================================= Clang 6.0.1 ........ 15686 |================================================ Clang 8.0 20180820 . 15356 |=============================================== Timed MrBayes Analysis 3.1.2 Primate Phylogeny Analysis Seconds < Lower Is Better GCC 7.3.0 .......... 56.41 |================================================== GCC 8.2.0 .......... 56.99 |=================================================== GCC 9.0.0 20180819 . 56.24 |================================================== Clang 6.0.1 ........ 56.19 |================================================== Clang 8.0 20180820 . 56.38 |================================================== Cpuminer-Opt 3.8.8.1 Algorithm: m7m Hash Speed > Higher Is Better GCC 7.3.0 .......... 1123.53 |================================================= GCC 8.2.0 .......... 1112.70 |================================================= GCC 9.0.0 20180819 . 1115.06 |================================================= Cpuminer-Opt 3.8.8.1 Algorithm: deep Hash Speed > Higher Is Better GCC 7.3.0 .......... 16.84 |=================================================== GCC 8.2.0 .......... 16.75 |=================================================== GCC 9.0.0 20180819 . 16.78 |=================================================== Cpuminer-Opt 3.8.8.1 Algorithm: lbry Hash Speed > Higher Is Better GCC 7.3.0 .......... 40.48 |================================================== GCC 8.2.0 .......... 41.56 |=================================================== GCC 9.0.0 20180819 . 40.84 |================================================== Cpuminer-Opt 3.8.8.1 Algorithm: skein Hash Speed > Higher Is Better GCC 7.3.0 .......... 65.74 |=================================================== GCC 8.2.0 .......... 65.28 |=================================================== GCC 9.0.0 20180819 . 65.40 |=================================================== Cpuminer-Opt 3.8.8.1 Algorithm: myr-gr Hash Speed > Higher Is Better GCC 7.3.0 .......... 9806.19 |================================================= GCC 8.2.0 .......... 9755.09 |================================================= GCC 9.0.0 20180819 . 9762.61 |================================================= Cpuminer-Opt 3.8.8.1 Algorithm: sha256t Hash Speed > Higher Is Better GCC 7.3.0 .......... 102.01 |================================================== GCC 8.2.0 .......... 100.90 |================================================= GCC 9.0.0 20180819 . 101.17 |================================================== Cpuminer-Opt 3.8.8.1 Algorithm: cryptonight Hash Speed > Higher Is Better GCC 7.3.0 .......... 466.01 |================================================== GCC 8.2.0 .......... 434.59 |=============================================== GCC 9.0.0 20180819 . 464.21 |================================================== Crafty 25.2 Elapsed Time Nodes Per Second > Higher Is Better GCC 7.3.0 .......... 7743718 |================================================ GCC 8.2.0 .......... 7925084 |================================================= GCC 9.0.0 20180819 . 7799156 |================================================ TSCP 1.81 AI Chess Performance Nodes Per Second > Higher Is Better GCC 7.3.0 .......... 1131447 |============================================= GCC 8.2.0 .......... 1120835 |============================================= GCC 9.0.0 20180819 . 1129108 |============================================= Clang 6.0.1 ........ 1218537 |================================================= Clang 8.0 20180820 . 1206260 |================================================= TTSIOD 3D Renderer 2.3b Phong Rendering With Soft-Shadow Mapping FPS > Higher Is Better GCC 7.3.0 .......... 552.32 |================================================ GCC 8.2.0 .......... 572.46 |================================================== Clang 6.0.1 ........ 54.30 |===== Clang 8.0 20180820 . 56.51 |===== x265 2.8 H.265 Video Encoding Frames Per Second > Higher Is Better GCC 7.3.0 .......... 13.71 |=============================================== GCC 8.2.0 .......... 14.16 |================================================= GCC 9.0.0 20180819 . 14.82 |=================================================== Clang 6.0.1 ........ 12.86 |============================================ Clang 8.0 20180820 . 12.78 |============================================ GraphicsMagick 1.3.30 Operation: Swirl Iterations Per Minute > Higher Is Better GCC 7.3.0 .......... 247 |===================================================== GCC 8.2.0 .......... 246 |===================================================== GCC 9.0.0 20180819 . 247 |===================================================== Clang 6.0.1 ........ 222 |================================================ Clang 8.0 20180820 . 222 |================================================ GraphicsMagick 1.3.30 Operation: Rotate Iterations Per Minute > Higher Is Better GCC 7.3.0 .......... 247 |============================================== GCC 8.2.0 .......... 244 |============================================= GCC 9.0.0 20180819 . 248 |============================================== Clang 6.0.1 ........ 287 |===================================================== Clang 8.0 20180820 . 286 |===================================================== GraphicsMagick 1.3.30 Operation: Sharpen Iterations Per Minute > Higher Is Better GCC 7.3.0 .......... 219 |===================================================== GCC 8.2.0 .......... 218 |===================================================== GCC 9.0.0 20180819 . 218 |===================================================== Clang 6.0.1 ........ 194 |=============================================== Clang 8.0 20180820 . 194 |=============================================== GraphicsMagick 1.3.30 Operation: Enhanced Iterations Per Minute > Higher Is Better GCC 7.3.0 .......... 231 |===================================================== GCC 8.2.0 .......... 229 |===================================================== GCC 9.0.0 20180819 . 231 |===================================================== Clang 6.0.1 ........ 205 |=============================================== Clang 8.0 20180820 . 205 |=============================================== GraphicsMagick 1.3.30 Operation: Resizing Iterations Per Minute > Higher Is Better GCC 7.3.0 .......... 243 |===================================================== GCC 8.2.0 .......... 241 |==================================================== GCC 9.0.0 20180819 . 244 |===================================================== Clang 6.0.1 ........ 215 |=============================================== Clang 8.0 20180820 . 215 |=============================================== GraphicsMagick 1.3.30 Operation: Noise-Gaussian Iterations Per Minute > Higher Is Better GCC 7.3.0 .......... 205 |===================================================== GCC 8.2.0 .......... 203 |==================================================== GCC 9.0.0 20180819 . 205 |===================================================== Clang 6.0.1 ........ 188 |================================================= Clang 8.0 20180820 . 189 |================================================= GraphicsMagick 1.3.30 Operation: HWB Color Space Iterations Per Minute > Higher Is Better GCC 7.3.0 .......... 273 |===================================================== GCC 8.2.0 .......... 274 |===================================================== GCC 9.0.0 20180819 . 273 |===================================================== Clang 6.0.1 ........ 244 |=============================================== Clang 8.0 20180820 . 247 |================================================ Himeno Benchmark 3.0 Poisson Pressure Solver MFLOPS > Higher Is Better GCC 7.3.0 .......... 1245.17 |============================================= GCC 8.2.0 .......... 1296.77 |============================================== GCC 9.0.0 20180819 . 1322.19 |=============================================== Clang 6.0.1 ........ 1369.51 |================================================= Clang 8.0 20180820 . 1350.08 |================================================ Stockfish 9 Total Time Nodes Per Second > Higher Is Better GCC 7.3.0 .......... 67881087 |============================================== GCC 8.2.0 .......... 69016009 |=============================================== GCC 9.0.0 20180819 . 68072559 |=============================================== Clang 6.0.1 ........ 70091926 |================================================ Clang 8.0 20180820 . 69728780 |================================================ ebizzy 0.3 Records/s > Higher Is Better GCC 7.3.0 .......... 1388041 |================================================ GCC 8.2.0 .......... 1398651 |================================================= GCC 9.0.0 20180819 . 1405211 |================================================= Clang 6.0.1 ........ 1347532 |=============================================== Clang 8.0 20180820 . 1351191 |=============================================== Smallpt 1.0 Global Illumination Renderer; 128 Samples Seconds < Lower Is Better GCC 7.3.0 .......... 3.94 |==================================================== GCC 8.2.0 .......... 3.90 |=================================================== GCC 9.0.0 20180819 . 3.90 |=================================================== AOBench Size: 2048 x 2048 - Total Time Seconds < Lower Is Better GCC 7.3.0 .......... 38.44 |================================================ GCC 8.2.0 .......... 38.61 |================================================ GCC 9.0.0 20180819 . 38.56 |================================================ Clang 6.0.1 ........ 40.65 |=================================================== Clang 8.0 20180820 . 40.57 |=================================================== Zstd Compression 1.3.4 Compressing ubuntu-16.04.3-server-i386.img, Compression Level 19 Seconds < Lower Is Better GCC 7.3.0 .......... 111.52 |================================================ GCC 8.2.0 .......... 113.47 |================================================= GCC 9.0.0 20180819 . 115.97 |================================================== Clang 6.0.1 ........ 114.08 |================================================= Clang 8.0 20180820 . 114.96 |================================================== FLAC Audio Encoding 1.3.2 WAV To FLAC Seconds < Lower Is Better GCC 7.3.0 .......... 9.31 |=================================================== GCC 8.2.0 .......... 9.48 |==================================================== GCC 9.0.0 20180819 . 9.43 |==================================================== Clang 6.0.1 ........ 8.58 |=============================================== Clang 8.0 20180820 . 8.62 |=============================================== LAME MP3 Encoding 3.100 WAV To MP3 Seconds < Lower Is Better GCC 7.3.0 .......... 8.61 |================================================ GCC 8.2.0 .......... 7.99 |============================================ GCC 9.0.0 20180819 . 7.93 |============================================ Clang 6.0.1 ........ 9.31 |==================================================== Clang 8.0 20180820 . 9.39 |==================================================== m-queens 1.1 Time To Solve Seconds < Lower Is Better GCC 7.3.0 .......... 25.15 |=============================================== GCC 8.2.0 .......... 25.23 |================================================ GCC 9.0.0 20180819 . 25.20 |================================================ Clang 6.0.1 ........ 27.03 |=================================================== Clang 8.0 20180820 . 26.80 |=================================================== Minion 1.8 Benchmark: Graceful Seconds < Lower Is Better GCC 7.3.0 .......... 42.83 |=================================================== GCC 8.2.0 .......... 41.84 |================================================== Clang 6.0.1 ........ 42.11 |================================================== Clang 8.0 20180820 . 42.29 |================================================== Minion 1.8 Benchmark: Solitaire Seconds < Lower Is Better GCC 7.3.0 .......... 63.84 |================================================= GCC 8.2.0 .......... 65.98 |=================================================== Clang 6.0.1 ........ 65.78 |=================================================== Clang 8.0 20180820 . 64.09 |================================================== Minion 1.8 Benchmark: Quasigroup Seconds < Lower Is Better GCC 7.3.0 .......... 108.86 |================================================== GCC 8.2.0 .......... 105.17 |================================================ Clang 6.0.1 ........ 108.83 |================================================== Clang 8.0 20180820 . 108.82 |================================================== Aircrack-ng 1.3 k/s > Higher Is Better GCC 7.3.0 .......... 51214 |============================================ GCC 8.2.0 .......... 51541 |============================================ GCC 9.0.0 20180819 . 51404 |============================================ Clang 6.0.1 ........ 59594 |=================================================== Clang 8.0 20180820 . 52822 |============================================= PostgreSQL pgbench 10.3 Scaling: Buffer Test - Test: Normal Load - Mode: Read Only TPS > Higher Is Better GCC 7.3.0 .......... 480658.63 |============================================== GCC 8.2.0 .......... 482289.95 |============================================== GCC 9.0.0 20180819 . 486223.55 |=============================================== Clang 6.0.1 ........ 475716.33 |============================================== Clang 8.0 20180820 . 488694.21 |=============================================== PostgreSQL pgbench 10.3 Scaling: Buffer Test - Test: Normal Load - Mode: Read Write TPS > Higher Is Better GCC 7.3.0 .......... 17488.04 |================================================ GCC 8.2.0 .......... 17469.57 |================================================ GCC 9.0.0 20180819 . 17591.26 |================================================ Clang 6.0.1 ........ 17497.83 |================================================ Clang 8.0 20180820 . 17652.58 |================================================ Redis 4.0.8 Test: GET Requests Per Second > Higher Is Better GCC 7.3.0 .......... 2698055.00 |============================================ GCC 8.2.0 .......... 2793354.17 |============================================== GCC 9.0.0 20180819 . 2710120.33 |============================================= Clang 6.0.1 ........ 2639306.42 |=========================================== Clang 8.0 20180820 . 2705635.17 |============================================= Redis 4.0.8 Test: SET Requests Per Second > Higher Is Better GCC 7.3.0 .......... 1693215.29 |========================================== GCC 8.2.0 .......... 1863498.67 |============================================== GCC 9.0.0 20180819 . 1840628.42 |============================================= Clang 6.0.1 ........ 1813874.00 |============================================= Clang 8.0 20180820 . 1855304.58 |============================================== Sysbench 2018-07-28 Test: Memory Events Per Second > Higher Is Better GCC 7.3.0 .......... 7338350.70 |============================================== GCC 8.2.0 .......... 7311314.60 |============================================== GCC 9.0.0 20180819 . 7328766.71 |============================================== Clang 6.0.1 ........ 7303676.23 |============================================== Clang 8.0 20180820 . 7271460.83 |============================================== Sysbench 2018-07-28 Test: CPU Events Per Second > Higher Is Better GCC 7.3.0 .......... 56525.45 |================================================ GCC 8.2.0 .......... 56539.00 |================================================ GCC 9.0.0 20180819 . 51558.44 |============================================ Clang 6.0.1 ........ 51589.28 |============================================ Clang 8.0 20180820 . 51726.57 |============================================ Apache Siege 2.4.29 Concurrent Users: 50 Transactions Per Second > Higher Is Better GCC 7.3.0 .......... 25575.08 |================================================ GCC 8.2.0 .......... 24901.14 |============================================== GCC 9.0.0 20180819 . 24976.32 |=============================================== Clang 6.0.1 ........ 25753.42 |================================================ Clang 8.0 20180820 . 24775.60 |==============================================