Zapcc Compiler 2018 Benchmarks Zapcc, ccache, GCC, LLVM Clang compiler benchmarks particularly interested in build time. Tests by Michael Larabel for a future article. Zapcc: Processor: 2 x Intel Xeon Gold 6138 @ 3.70GHz (40 Cores / 80 Threads), Motherboard: TYAN S7106 (V1.00 BIOS), Chipset: Intel Sky Lake-E DMI3 Registers, Memory: 96256MB, Disk: 256GB Samsung SSD 850 + 2000GB Seagate ST2000DM006-2DM1 + 2 x 120GB TOSHIBA-TR150, Graphics: ASPEED ASPEED Family, Monitor: VE228, Network: Intel I210 Gigabit Connection OS: Ubuntu 18.04, Kernel: 4.17.0-999-generic (x86_64) 20180614, Desktop: GNOME Shell 3.28.1, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, Compiler: Clang 5.0.0, File-System: ext4, Screen Resolution: 1920x1080 Zapcc Round 2: Processor: 2 x Intel Xeon Gold 6138 @ 3.70GHz (40 Cores / 80 Threads), Motherboard: TYAN S7106 (V1.00 BIOS), Chipset: Intel Sky Lake-E DMI3 Registers, Memory: 96256MB, Disk: 256GB Samsung SSD 850 + 2000GB Seagate ST2000DM006-2DM1 + 2 x 120GB TOSHIBA-TR150, Graphics: ASPEED ASPEED Family, Monitor: VE228, Network: Intel I210 Gigabit Connection OS: Ubuntu 18.04, Kernel: 4.17.0-999-generic (x86_64) 20180614, Desktop: GNOME Shell 3.28.1, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, Compiler: Clang 5.0.0, File-System: ext4, Screen Resolution: 1920x1080 GCC 7.3.0: Processor: 2 x Intel Xeon Gold 6138 @ 3.70GHz (40 Cores / 80 Threads), Motherboard: TYAN S7106 (V1.00 BIOS), Chipset: Intel Sky Lake-E DMI3 Registers, Memory: 96256MB, Disk: 256GB Samsung SSD 850 + 2000GB Seagate ST2000DM006-2DM1 + 2 x 120GB TOSHIBA-TR150, Graphics: ASPEED ASPEED Family, Monitor: VE228, Network: Intel I210 Gigabit Connection OS: Ubuntu 18.04, Kernel: 4.17.0-999-generic (x86_64) 20180614, Desktop: GNOME Shell 3.28.1, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, Compiler: GCC 7.3.0 + LLVM 6.0.0, File-System: ext4, Screen Resolution: 1920x1080 GCC 7.3.0 Round 2: Processor: 2 x Intel Xeon Gold 6138 @ 3.70GHz (40 Cores / 80 Threads), Motherboard: TYAN S7106 (V1.00 BIOS), Chipset: Intel Sky Lake-E DMI3 Registers, Memory: 96256MB, Disk: 256GB Samsung SSD 850 + 2000GB Seagate ST2000DM006-2DM1 + 2 x 120GB TOSHIBA-TR150, Graphics: ASPEED ASPEED Family, Monitor: VE228, Network: Intel I210 Gigabit Connection OS: Ubuntu 18.04, Kernel: 4.17.0-999-generic (x86_64) 20180614, Desktop: GNOME Shell 3.28.1, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, Compiler: GCC 7.3.0 + LLVM 6.0.0, File-System: ext4, Screen Resolution: 1920x1080 Clang 6.0: Processor: 2 x Intel Xeon Gold 6138 @ 3.70GHz (40 Cores / 80 Threads), Motherboard: TYAN S7106 (V1.00 BIOS), Chipset: Intel Sky Lake-E DMI3 Registers, Memory: 96256MB, Disk: 256GB Samsung SSD 850 + 2000GB Seagate ST2000DM006-2DM1 + 2 x 120GB TOSHIBA-TR150, Graphics: ASPEED ASPEED Family, Monitor: VE228, Network: Intel I210 Gigabit Connection OS: Ubuntu 18.04, Kernel: 4.17.0-999-generic (x86_64) 20180614, Desktop: GNOME Shell 3.28.1, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, Compiler: Clang 6.0.0-1ubuntu2 + LLVM 6.0.0, File-System: ext4, Screen Resolution: 1920x1080 Clang 6.0 Round 2: Processor: 2 x Intel Xeon Gold 6138 @ 3.70GHz (40 Cores / 80 Threads), Motherboard: TYAN S7106 (V1.00 BIOS), Chipset: Intel Sky Lake-E DMI3 Registers, Memory: 96256MB, Disk: 256GB Samsung SSD 850 + 2000GB Seagate ST2000DM006-2DM1 + 2 x 120GB TOSHIBA-TR150, Graphics: ASPEED ASPEED Family, Monitor: VE228, Network: Intel I210 Gigabit Connection OS: Ubuntu 18.04, Kernel: 4.17.0-999-generic (x86_64) 20180614, Desktop: GNOME Shell 3.28.1, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, Compiler: Clang 6.0.0-1ubuntu2 + LLVM 6.0.0, File-System: ext4, Screen Resolution: 1920x1080 Ccache: Processor: 2 x Intel Xeon Gold 6138 @ 3.70GHz (40 Cores / 80 Threads), Motherboard: TYAN S7106 (V1.00 BIOS), Chipset: Intel Sky Lake-E DMI3 Registers, Memory: 96256MB, Disk: 256GB Samsung SSD 850 + 2000GB Seagate ST2000DM006-2DM1 + 2 x 120GB TOSHIBA-TR150, Graphics: ASPEED ASPEED Family, Monitor: VE228, Network: Intel I210 Gigabit Connection OS: Ubuntu 18.04, Kernel: 4.17.0-999-generic (x86_64) 20180614, Desktop: GNOME Shell 3.28.1, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, Compiler: LLVM 6.0.0, File-System: ext4, Screen Resolution: 1920x1080 Ccache Round 2: Processor: 2 x Intel Xeon Gold 6138 @ 3.70GHz (40 Cores / 80 Threads), Motherboard: TYAN S7106 (V1.00 BIOS), Chipset: Intel Sky Lake-E DMI3 Registers, Memory: 96256MB, Disk: 256GB Samsung SSD 850 + 2000GB Seagate ST2000DM006-2DM1 + 2 x 120GB TOSHIBA-TR150, Graphics: ASPEED ASPEED Family, Monitor: VE228, Network: Intel I210 Gigabit Connection OS: Ubuntu 18.04, Kernel: 4.17.0-999-generic (x86_64) 20180614, Desktop: GNOME Shell 3.28.1, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, Compiler: LLVM 6.0.0, File-System: ext4, Screen Resolution: 1920x1080 Smallpt 1.0 Global Illumination Renderer; 100 Samples Seconds < Lower Is Better Zapcc ............. 5 |======================================================== GCC 7.3.0 ......... 4 |============================================= GCC 7.3.0 Round 2 . 5 |======================================================== Ccache ............ 4 |============================================= Ccache Round 2 .... 5 |======================================================== Smallpt 1.0 Test Install Time Seconds < Lower Is Better Zapcc ............. 0.434 |======================= GCC 7.3.0 ......... 0.965 |==================================================== GCC 7.3.0 Round 2 . 0.422 |======================= Ccache ............ 0.410 |====================== Ccache Round 2 .... 0.418 |======================= Stockfish 9 Total Time Nodes Per Second > Higher Is Better Zapcc ............. 67563734 |============================================== Zapcc Round 2 ..... 68606562 |=============================================== GCC 7.3.0 ......... 67864514 |============================================== GCC 7.3.0 Round 2 . 67146146 |============================================== Clang 6.0 ......... 71602640 |================================================= Clang 6.0 Round 2 . 71652494 |================================================= Ccache ............ 67851785 |============================================== Ccache Round 2 .... 68251469 |=============================================== Stockfish 9 Test Install Time Seconds < Lower Is Better Zapcc ............. 13.824 |========================================= Zapcc Round 2 ..... 0.098 | GCC 7.3.0 ......... 13.909 |========================================= GCC 7.3.0 Round 2 . 13.959 |========================================= Clang 6.0 ......... 17.195 |=================================================== Clang 6.0 Round 2 . 0.096 | Ccache ............ 13.987 |========================================= Ccache Round 2 .... 0.098 | Bullet Physics Engine 2.81 Test: 3000 Fall Seconds < Lower Is Better Zapcc ............. 4.90 |===================================================== Zapcc Round 2 ..... 4.88 |==================================================== GCC 7.3.0 ......... 4.63 |================================================== GCC 7.3.0 Round 2 . 4.56 |================================================= Clang 6.0 ......... 4.93 |===================================================== Clang 6.0 Round 2 . 4.83 |==================================================== Ccache ............ 4.59 |================================================= Ccache Round 2 .... 4.59 |================================================= Bullet Physics Engine 2.81 Test Install Time Seconds < Lower Is Better Zapcc ............. 8.512 |============================ Zapcc Round 2 ..... 1.070 |==== GCC 7.3.0 ......... 15.157 |================================================== GCC 7.3.0 Round 2 . 15.013 |================================================== Clang 6.0 ......... 10.107 |================================== Clang 6.0 Round 2 . 0.894 |=== Ccache ............ 15.346 |=================================================== Ccache Round 2 .... 1.000 |=== FLAC Audio Encoding 1.3.2 WAV To FLAC Seconds < Lower Is Better Zapcc ............. 11.90 |=============================================== Zapcc Round 2 ..... 12.04 |=============================================== GCC 7.3.0 ......... 12.94 |=================================================== GCC 7.3.0 Round 2 . 13.28 |==================================================== Clang 6.0 ......... 10.28 |======================================== Clang 6.0 Round 2 . 10.29 |======================================== Ccache ............ 10.30 |======================================== Ccache Round 2 .... 10.15 |======================================== FLAC Audio Encoding 1.3.2 Test Install Time Seconds < Lower Is Better Zapcc ............. 25.65 |============================================ Zapcc Round 2 ..... 28.54 |================================================= GCC 7.3.0 ......... 28.76 |================================================= GCC 7.3.0 Round 2 . 27.01 |============================================== Clang 6.0 ......... 30.32 |==================================================== Clang 6.0 Round 2 . 30.45 |==================================================== Ccache ............ 26.83 |============================================== Ccache Round 2 .... 26.67 |============================================== Sockperf 3.4 Test: Latency Under Load usec < Lower Is Better Zapcc ............. 31.67 |============================================== Zapcc Round 2 ..... 34.60 |================================================== GCC 7.3.0 ......... 33.85 |================================================= GCC 7.3.0 Round 2 . 33.05 |================================================ Ccache ............ 35.87 |==================================================== Ccache Round 2 .... 30.70 |============================================= Sockperf 3.4 Test Install Time Seconds < Lower Is Better Zapcc ............. 38.625 |=================== Zapcc Round 2 ..... 7.742 |==== GCC 7.3.0 ......... 102.045 |================================================= GCC 7.3.0 Round 2 . 103.799 |================================================== Ccache ............ 102.955 |================================================== Ccache Round 2 .... 7.197 |=== Sockperf 3.4 Test: Latency Ping Pong usec < Lower Is Better Zapcc ............. 4.64 |==================================================== Zapcc Round 2 ..... 4.69 |===================================================== GCC 7.3.0 ......... 4.26 |================================================ GCC 7.3.0 Round 2 . 4.60 |==================================================== Ccache ............ 4.39 |================================================== Ccache Round 2 .... 4.41 |================================================== Sockperf 3.4 Test: Throughput Messages Per Second > Higher Is Better Zapcc ............. 500785 |================================================= Zapcc Round 2 ..... 500441 |================================================= GCC 7.3.0 ......... 513448 |================================================== GCC 7.3.0 Round 2 . 514858 |=================================================== Ccache ............ 502612 |================================================= Ccache Round 2 .... 519670 |=================================================== Botan 2.6.0 Test: AES-256 - Encrypt MiB/s > Higher Is Better Zapcc ............. 3517.93 |================================================== Zapcc Round 2 ..... 3527.62 |================================================== GCC 7.3.0 ......... 3339.37 |=============================================== GCC 7.3.0 Round 2 . 3332.64 |=============================================== Clang 6.0 ......... 3519.70 |================================================== Clang 6.0 Round 2 . 3508.71 |================================================== Ccache ............ 3336.93 |=============================================== Ccache Round 2 .... 3339.99 |=============================================== Botan 2.6.0 Test: AES-256 - Decrypt MiB/s > Higher Is Better Zapcc . 3527.95 |============================================================== Botan 2.6.0 Test Install Time Seconds < Lower Is Better Zapcc ............. 12.66 |========================================== Zapcc Round 2 ..... 12.31 |========================================= GCC 7.3.0 ......... 13.80 |============================================= GCC 7.3.0 Round 2 . 13.61 |============================================= Clang 6.0 ......... 15.78 |==================================================== Clang 6.0 Round 2 . 15.18 |================================================== Ccache ............ 13.81 |============================================== Ccache Round 2 .... 13.19 |=========================================== Botan 2.6.0 Test: Blowfish - Encrypt MiB/s > Higher Is Better Zapcc ............. 236.93 |=============================================== Zapcc Round 2 ..... 236.92 |=============================================== GCC 7.3.0 ......... 253.71 |=================================================== GCC 7.3.0 Round 2 . 253.72 |=================================================== Clang 6.0 ......... 254.86 |=================================================== Clang 6.0 Round 2 . 254.84 |=================================================== Ccache ............ 253.73 |=================================================== Ccache Round 2 .... 253.61 |=================================================== Botan 2.6.0 Test: Blowfish - Decrypt MiB/s > Higher Is Better Zapcc . 238.89 |=============================================================== Botan 2.6.0 Test: CAST-256 - Encrypt MiB/s > Higher Is Better Zapcc ............. 118.72 |================================================ Zapcc Round 2 ..... 118.71 |================================================ GCC 7.3.0 ......... 125.07 |=================================================== GCC 7.3.0 Round 2 . 125.17 |=================================================== Clang 6.0 ......... 122.06 |================================================== Clang 6.0 Round 2 . 122.09 |================================================== Ccache ............ 125.17 |=================================================== Ccache Round 2 .... 125.17 |=================================================== Botan 2.6.0 Test: CAST-256 - Decrypt MiB/s > Higher Is Better Zapcc . 120.83 |=============================================================== Botan 2.6.0 Test: KASUMI - Encrypt MiB/s > Higher Is Better Zapcc ............. 80.11 |=================================================== Zapcc Round 2 ..... 80.09 |=================================================== GCC 7.3.0 ......... 82.24 |==================================================== GCC 7.3.0 Round 2 . 82.19 |==================================================== Clang 6.0 ......... 79.55 |================================================== Clang 6.0 Round 2 . 79.57 |================================================== Ccache ............ 82.26 |==================================================== Ccache Round 2 .... 82.21 |==================================================== Botan 2.6.0 Test: KASUMI - Decrypt MiB/s > Higher Is Better Zapcc . 78.52 |================================================================ Botan 2.6.0 Test: Twofish - Encrypt MiB/s > Higher Is Better Zapcc ............. 293.51 |============================================ Zapcc Round 2 ..... 293.47 |============================================ GCC 7.3.0 ......... 340.21 |=================================================== GCC 7.3.0 Round 2 . 339.87 |=================================================== Clang 6.0 ......... 308.47 |============================================== Clang 6.0 Round 2 . 308.60 |============================================== Ccache ............ 339.96 |=================================================== Ccache Round 2 .... 338.74 |=================================================== Botan 2.6.0 Test: Twofish - Decrypt MiB/s > Higher Is Better Zapcc . 294.85 |=============================================================== Timed LLVM Compilation 4.0.1 Time To Compile Seconds < Lower Is Better Zapcc ............. 78.15 |===================== GCC 7.3.0 ......... 126.17 |================================== GCC 7.3.0 Round 2 . 128.75 |=================================== Clang 6.0 ......... 189.62 |=================================================== Clang 6.0 Round 2 . 190.16 |=================================================== Ccache ............ 128.16 |================================== Ccache Round 2 .... 126.34 |================================== Timed LLVM Compilation 4.0.1 Test Install Time Seconds < Lower Is Better Zapcc ............. 0.008 |==================================================== Zapcc Round 2 ..... 0.006 |======================================= GCC 7.3.0 ......... 0.006 |======================================= GCC 7.3.0 Round 2 . 0.008 |==================================================== Clang 6.0 ......... 0.006 |======================================= Clang 6.0 Round 2 . 0.006 |======================================= Ccache ............ 0.007 |============================================== Ccache Round 2 .... 0.007 |============================================== Primesieve 6.2 1e12 Prime Number Generation Seconds < Lower Is Better Zapcc ............. 10.33 |=================================================== Zapcc Round 2 ..... 10.16 |================================================== GCC 7.3.0 ......... 10.34 |=================================================== GCC 7.3.0 Round 2 . 10.32 |=================================================== Clang 6.0 ......... 9.90 |================================================= Clang 6.0 Round 2 . 10.04 |================================================== Ccache ............ 10.23 |=================================================== Ccache Round 2 .... 10.48 |==================================================== Primesieve 6.2 Test Install Time Seconds < Lower Is Better Zapcc ............. 5.710 |=============================================== Zapcc Round 2 ..... 0.210 |== GCC 7.3.0 ......... 5.297 |============================================ GCC 7.3.0 Round 2 . 5.667 |=============================================== Clang 6.0 ......... 6.273 |==================================================== Clang 6.0 Round 2 . 0.210 |== Ccache ............ 5.615 |=============================================== Ccache Round 2 .... 0.226 |== VP9 libvpx Encoding 1.7.0 vpxenc Frames Per Second > Higher Is Better Zapcc ............. 12.96 |=================================================== Zapcc Round 2 ..... 12.71 |================================================== GCC 7.3.0 ......... 10.58 |========================================== GCC 7.3.0 Round 2 . 10.60 |========================================== Clang 6.0 ......... 13.24 |==================================================== Clang 6.0 Round 2 . 13.19 |==================================================== Ccache ............ 10.59 |========================================== Ccache Round 2 .... 10.63 |========================================== VP9 libvpx Encoding 1.7.0 Test Install Time Seconds < Lower Is Better Zapcc ............. 64.22 |======================================= Zapcc Round 2 ..... 64.22 |======================================= GCC 7.3.0 ......... 85.01 |==================================================== GCC 7.3.0 Round 2 . 61.82 |====================================== Clang 6.0 ......... 63.68 |======================================= Clang 6.0 Round 2 . 63.68 |======================================= Ccache ............ 57.47 |=================================== Ccache Round 2 .... 57.47 |=================================== Botan 2.6.0 Test: AES-256 - Encrypt - Decrypt MiB/s > Higher Is Better Zapcc Round 2 ..... 3532.92 |================================================== GCC 7.3.0 ......... 3349.23 |=============================================== GCC 7.3.0 Round 2 . 3348.73 |=============================================== Clang 6.0 ......... 3514.17 |================================================== Clang 6.0 Round 2 . 3503.60 |================================================== Ccache ............ 3346.41 |=============================================== Ccache Round 2 .... 3347.42 |=============================================== Botan 2.6.0 Test: Blowfish - Encrypt - Decrypt MiB/s > Higher Is Better Zapcc Round 2 ..... 238.82 |================================================ GCC 7.3.0 ......... 254.27 |=================================================== GCC 7.3.0 Round 2 . 254.21 |=================================================== Clang 6.0 ......... 255.13 |=================================================== Clang 6.0 Round 2 . 255.22 |=================================================== Ccache ............ 254.34 |=================================================== Ccache Round 2 .... 254.49 |=================================================== Botan 2.6.0 Test: CAST-256 - Encrypt - Decrypt MiB/s > Higher Is Better Zapcc Round 2 ..... 120.89 |================================================= GCC 7.3.0 ......... 125.28 |=================================================== GCC 7.3.0 Round 2 . 125.38 |=================================================== Clang 6.0 ......... 122.61 |================================================== Clang 6.0 Round 2 . 122.33 |================================================== Ccache ............ 125.37 |=================================================== Ccache Round 2 .... 125.31 |=================================================== Botan 2.6.0 Test: KASUMI - Encrypt - Decrypt MiB/s > Higher Is Better Zapcc Round 2 ..... 78.44 |=================================================== GCC 7.3.0 ......... 79.65 |==================================================== GCC 7.3.0 Round 2 . 79.64 |==================================================== Clang 6.0 ......... 77.92 |=================================================== Clang 6.0 Round 2 . 78.04 |=================================================== Ccache ............ 79.67 |==================================================== Ccache Round 2 .... 79.66 |==================================================== Botan 2.6.0 Test: Twofish - Encrypt - Decrypt MiB/s > Higher Is Better Zapcc Round 2 ..... 295.01 |============================================= GCC 7.3.0 ......... 336.43 |=================================================== GCC 7.3.0 Round 2 . 336.13 |=================================================== Clang 6.0 ......... 297.35 |============================================= Clang 6.0 Round 2 . 297.42 |============================================= Ccache ............ 336.17 |=================================================== Ccache Round 2 .... 335.47 |===================================================