LLVM Clang 3.1 GCC 4.7 Intel Core i7 Benchmarks Benchmarking of GCC 4.6.3, GCC 4.7.0, LLVM Clang 3.0, and LLVM Clang 3.1 SVN compilers for a future article on Phoronix.com. Compilers built all test binaries with CFLAGS/CXXFLAGS of -O3 -march=native from this Intel Core i7 Clarksfield notebook. Ubuntu 12.04 LTS x86_64 was used with the Linux 3.2 kernel.
HTML result view exported from: https://openbenchmarking.org/result/1204215-SU-LLVMCLANG23&grr&rdt .
LLVM Clang 3.1 GCC 4.7 Intel Core i7 Benchmarks Processor Motherboard Chipset Memory Disk Graphics Audio Network OS Kernel Desktop Display Server Display Driver OpenGL Compiler File-System Screen Resolution GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN Open64 5.0 Intel Core i7 720Q @ 1.60GHz (8 Cores) LENOVO 4318CTO Intel Core DMI 4096MB 160GB INTEL SSDSA2M160 NVIDIA Quadro FX 880M 1024MB (405/324MHz) Conexant CX20585 Intel 82577LM Gigabit Connection + Intel Centrino Ultimate-N 6300 Ubuntu 12.04 3.4.0-999-generic (x86_64) Unity 5.10.0 X Server 1.11.3 nouveau 0.0.16 2.1 Mesa 8.0.2 Gallium 0.4 GCC 4.6.3 ext4 1600x900 GCC 4.7.0 Clang 3.0 + LLVM 3.0 Clang 3.1 (SVN 155295) + LLVM 3.1svn Open64 5.0 OpenBenchmarking.org Compiler Details - GCC 4.6.3: --enable-checking=release --enable-languages=c,c++ --enable-lto - GCC 4.7.0: --enable-checking=release --enable-languages=c,c++ --enable-lto - LLVM-Clang 3.0: Optimized build; Built Apr 21 2012 (12:40:14); Host: x86_64-unknown-linux-gnu; Host CPU: corei7 - LLVM-Clang 3.1 SVN: Optimized build; Built Apr 21 2012 (14:54:30); Default target: x86_64-unknown-linux-gnu; Host CPU: corei7 Processor Details - Scaling Governor: ondemand System Details - Compiz was running on this system.
LLVM Clang 3.1 GCC 4.7 Intel Core i7 Benchmarks apache: Static Web Page Serving nginx: Static Web Page Serving pgbench: TPC-B Transactions Per Second openssl: RSA 4096-bit Performance tachyon: Total Time nero2d: Total Time minion: Quasigroup minion: Solitaire minion: Graceful minion: Bibd ffmpeg: AVI To NTSC VCD encode-mp3: WAV To MP3 encode-flac: WAV To FLAC crafty: Elapsed Time smallpt: Global Illumination Renderer; 100 Samples compress-pbzip2: 256MB File Compression c-ray: Total Time build-php: Time To Compile compress-7zip: Compress Speed Test himeno: Poisson Pressure Solver x264: H.264 Video Encoding vpxenc: vpxenc ttsiod-renderer: Phong Rendering With Soft-Shadow Mapping john-the-ripper: Blowfish byte: Dhrystone 2 fhourstones: Complex Connect-4 Solving gmpbench: Total Time mrbayes: Primate Phylogeny Analysis mafft: Multiple Sequence Alignment hmmer: Pfam Database Search ffte: N=64, 1D Complex FFT Routine GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN Open64 5.0 14290.99 15482.08 2375.18 42.23 36.05 640.17 255.83 203.00 111.35 206.67 15.87 23.58 9.97 109.88 69 19.34 139.01 50.42 8849 1060.59 58.46 9.93 63.32 2215 18737961.27 8643.40 1739 37.07 13.73 26.52 3276.19 14322.05 14956.30 2405.91 42.08 37.21 638.60 253.16 211.57 122.41 217.34 15.73 23.10 9.32 108.29 68 22.30 91.18 54.74 8890 1142.97 58.26 9.76 59.50 2211 18075520.17 8631.43 1751.20 32.38 13.60 26.63 3156.92 14867.10 15559.96 277.69 224.90 110.30 223.86 234 118.20 9108 1002.87 16.14 33.02 3270.19 14834.66 15767.21 2426.91 42.08 36.17 262.50 217.96 110.04 219.58 16.09 23.81 10.85 107.85 251 23.21 109.11 47.49 9166 1053.29 9.07 662 8551.90 40.09 14.73 32.63 3197.68 3267.81 OpenBenchmarking.org
Apache Benchmark Static Web Page Serving OpenBenchmarking.org Requests Per Second, More Is Better Apache Benchmark 2.2.21 Static Web Page Serving GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 3K 6K 9K 12K 15K SE +/- 14.58, N = 3 SE +/- 59.62, N = 3 SE +/- 62.06, N = 3 SE +/- 131.26, N = 3 14290.99 14322.05 14867.10 14834.66 1. (CC) gcc options: -pthread -O3 -march=native -lm -lexpat -lrt -lcrypt -lpthread -ldl
NGINX Benchmark Static Web Page Serving OpenBenchmarking.org Requests Per Second, More Is Better NGINX Benchmark 1.0.11 Static Web Page Serving GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 3K 6K 9K 12K 15K SE +/- 89.02, N = 3 SE +/- 54.72, N = 3 SE +/- 184.13, N = 3 SE +/- 141.05, N = 3 15482.08 14956.30 15559.96 15767.21 1. (CC) gcc options: -lpthread -lcrypt -lcrypto -lz
PostgreSQL pgbench TPC-B Transactions Per Second OpenBenchmarking.org TPS, More Is Better PostgreSQL pgbench 8.4.11 TPC-B Transactions Per Second GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 500 1000 1500 2000 2500 SE +/- 12.24, N = 3 SE +/- 10.83, N = 3 SE +/- 16.75, N = 3 2375.18 2405.91 2426.91 1. (CC) gcc options: -O3 -march=native -fno-strict-aliasing -fwrapv -lpgport -lpq -lcrypt -ldl -lm
OpenSSL RSA 4096-bit Performance OpenBenchmarking.org Signs Per Second, More Is Better OpenSSL 1.0.0e RSA 4096-bit Performance GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 10 20 30 40 50 SE +/- 0.10, N = 4 SE +/- 0.03, N = 4 SE +/- 0.05, N = 4 42.23 42.08 42.08 1. (CC) gcc options: -m64 -O3 -lssl -lcrypto -ldl
Tachyon Total Time OpenBenchmarking.org Seconds, Fewer Is Better Tachyon 0.98.9 Total Time GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 9 18 27 36 45 SE +/- 0.02, N = 3 SE +/- 0.02, N = 3 SE +/- 0.02, N = 3 36.05 37.21 36.17 1. (CC) gcc options: -m32 -O3 -fomit-frame-pointer -ffast-math -ltachyon -lm -lpthread
Open FMM Nero2D Total Time OpenBenchmarking.org Seconds, Fewer Is Better Open FMM Nero2D 2.0.2 Total Time GCC 4.6.3 GCC 4.7.0 140 280 420 560 700 640.17 638.60 1. (CXX) g++ options: -O3 -march=native -lfftw3 -llapack -lblas -lgfortran -lm
Minion Benchmark: Quasigroup OpenBenchmarking.org Seconds, Fewer Is Better Minion 0.12 Benchmark: Quasigroup GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 60 120 180 240 300 SE +/- 0.25, N = 3 SE +/- 0.04, N = 3 SE +/- 0.27, N = 3 SE +/- 0.21, N = 3 255.83 253.16 277.69 262.50 -mdynamic-no-pic -lz -lbz2 -mdynamic-no-pic -lz -lbz2 1. (CXX) g++ options: -O3 -fomit-frame-pointer -rdynamic -lboost_iostreams-mt
Minion Benchmark: Solitaire OpenBenchmarking.org Seconds, Fewer Is Better Minion 0.12 Benchmark: Solitaire GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 50 100 150 200 250 SE +/- 0.36, N = 3 SE +/- 0.22, N = 3 SE +/- 0.44, N = 3 SE +/- 0.41, N = 3 203.00 211.57 224.90 217.96 -mdynamic-no-pic -lz -lbz2 -mdynamic-no-pic -lz -lbz2 1. (CXX) g++ options: -O3 -fomit-frame-pointer -rdynamic -lboost_iostreams-mt
Minion Benchmark: Graceful OpenBenchmarking.org Seconds, Fewer Is Better Minion 0.12 Benchmark: Graceful GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 30 60 90 120 150 SE +/- 0.27, N = 3 SE +/- 0.33, N = 3 SE +/- 0.08, N = 3 SE +/- 0.31, N = 3 111.35 122.41 110.30 110.04 -mdynamic-no-pic -lz -lbz2 -mdynamic-no-pic -lz -lbz2 1. (CXX) g++ options: -O3 -fomit-frame-pointer -rdynamic -lboost_iostreams-mt
Minion Benchmark: Bibd OpenBenchmarking.org Seconds, Fewer Is Better Minion 0.12 Benchmark: Bibd GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 50 100 150 200 250 SE +/- 0.63, N = 3 SE +/- 0.27, N = 3 SE +/- 0.43, N = 3 SE +/- 0.37, N = 3 206.67 217.34 223.86 219.58 -mdynamic-no-pic -lz -lbz2 -mdynamic-no-pic -lz -lbz2 1. (CXX) g++ options: -O3 -fomit-frame-pointer -rdynamic -lboost_iostreams-mt
FFmpeg AVI To NTSC VCD OpenBenchmarking.org Seconds, Fewer Is Better FFmpeg 0.10 AVI To NTSC VCD GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 4 8 12 16 20 SE +/- 0.01, N = 3 SE +/- 0.02, N = 3 SE +/- 0.01, N = 3 15.87 15.73 16.09 1. (CC) gcc options: -lavdevice -lavfilter -lavformat -lavcodec -lswresample -lswscale -lavutil -ldl -lasound -lSDL -lm -pthread -lbz2
LAME MP3 Encoding WAV To MP3 OpenBenchmarking.org Seconds, Fewer Is Better LAME MP3 Encoding 3.99.3 WAV To MP3 GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 6 12 18 24 30 SE +/- 0.04, N = 5 SE +/- 0.02, N = 5 SE +/- 0.04, N = 5 23.58 23.10 23.81
FLAC Audio Encoding WAV To FLAC OpenBenchmarking.org Seconds, Fewer Is Better FLAC Audio Encoding 1.2.1 WAV To FLAC GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 3 6 9 12 15 SE +/- 0.01, N = 5 SE +/- 0.02, N = 5 SE +/- 0.02, N = 5 9.97 9.32 10.85 1. (CXX) g++ options: -O3 -march=native -lm
Crafty Elapsed Time OpenBenchmarking.org Seconds, Fewer Is Better Crafty 23.4 Elapsed Time GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 20 40 60 80 100 SE +/- 0.11, N = 3 SE +/- 0.05, N = 3 SE +/- 0.06, N = 3 109.88 108.29 107.85 1. (CC) gcc options: -lstdc++ -lm
Smallpt Global Illumination Renderer; 100 Samples OpenBenchmarking.org Seconds, Fewer Is Better Smallpt 1.0 Global Illumination Renderer; 100 Samples GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 50 100 150 200 250 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.33, N = 3 SE +/- 0.67, N = 3 69 68 234 251 1. (CXX) g++ options: -fopenmp -O3 -march=native
Parallel BZIP2 Compression 256MB File Compression OpenBenchmarking.org Seconds, Fewer Is Better Parallel BZIP2 Compression 1.0.5 256MB File Compression GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 6 12 18 24 30 SE +/- 0.05, N = 3 SE +/- 0.03, N = 3 SE +/- 0.03, N = 3 19.34 22.30 23.21 1. (CXX) g++ options: -O2 -pthread -lpthread -lbz2
C-Ray Total Time OpenBenchmarking.org Seconds, Fewer Is Better C-Ray 1.1 Total Time GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 30 60 90 120 150 SE +/- 12.48, N = 6 SE +/- 3.00, N = 6 SE +/- 3.60, N = 6 SE +/- 4.36, N = 6 139.01 91.18 118.20 109.11 1. (CC) gcc options: -lm -lpthread -O3 -march=native
Timed PHP Compilation Time To Compile OpenBenchmarking.org Seconds, Fewer Is Better Timed PHP Compilation 5.2.9 Time To Compile GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 12 24 36 48 60 SE +/- 0.07, N = 3 SE +/- 0.05, N = 3 SE +/- 0.06, N = 3 50.42 54.74 47.49 -lpthread 1. (CC) gcc options: -O3 -march=native -pedantic -ldl -lz -lm
7-Zip Compression Compress Speed Test OpenBenchmarking.org MIPS, More Is Better 7-Zip Compression 9.20.1 Compress Speed Test GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 2K 4K 6K 8K 10K SE +/- 65.12, N = 3 SE +/- 42.67, N = 3 SE +/- 11.50, N = 3 SE +/- 7.55, N = 3 8849 8890 9108 9166 1. (CXX) g++ options: -pipe -lpthread
Himeno Benchmark Poisson Pressure Solver OpenBenchmarking.org MFLOPS, More Is Better Himeno Benchmark 3.0 Poisson Pressure Solver GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 200 400 600 800 1000 SE +/- 16.23, N = 3 SE +/- 2.04, N = 3 SE +/- 5.12, N = 3 SE +/- 9.10, N = 3 1060.59 1142.97 1002.87 1053.29 1. (CC) gcc options: -O3 -march=native
x264 H.264 Video Encoding OpenBenchmarking.org Frames Per Second, More Is Better x264 2011-12-06 H.264 Video Encoding GCC 4.6.3 GCC 4.7.0 13 26 39 52 65 SE +/- 0.05, N = 3 SE +/- 0.12, N = 3 58.46 58.26
VP8 libvpx Encoding vpxenc OpenBenchmarking.org Frames Per Second, More Is Better VP8 libvpx Encoding 0.9.7-p1 vpxenc GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 3 6 9 12 15 SE +/- 0.09, N = 3 SE +/- 0.07, N = 3 SE +/- 0.06, N = 3 9.93 9.76 9.07 1. (CC) gcc options: -m64 -lvpx -lm -lpthread
TTSIOD 3D Renderer Phong Rendering With Soft-Shadow Mapping OpenBenchmarking.org FPS, More Is Better TTSIOD 3D Renderer 2.2w Phong Rendering With Soft-Shadow Mapping GCC 4.6.3 GCC 4.7.0 14 28 42 56 70 SE +/- 0.04, N = 3 SE +/- 0.12, N = 3 63.32 59.50 1. (CXX) g++ options: -O3 -march=native -fomit-frame-pointer -ffast-math -mtune=native -flto -msse -mrecip -mfpmath=sse -msse2 -mssse3 -lSDL -lstdc++
John The Ripper Test: Blowfish OpenBenchmarking.org Real C/S, More Is Better John The Ripper 1.7.9 Test: Blowfish GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 500 1000 1500 2000 2500 SE +/- 1.67, N = 3 SE +/- 1.67, N = 3 SE +/- 1.53, N = 3 2215 2211 662 1. (CC) gcc options: -fopenmp -lcrypt
BYTE Unix Benchmark Computational Test: Dhrystone 2 OpenBenchmarking.org LPS, More Is Better BYTE Unix Benchmark 3.6 Computational Test: Dhrystone 2 GCC 4.6.3 GCC 4.7.0 4M 8M 12M 16M 20M SE +/- 36800.75, N = 3 SE +/- 14064.68, N = 3 18737961.27 18075520.17 1. (CC) gcc options: -O3 -march=native
Fhourstones Complex Connect-4 Solving OpenBenchmarking.org Kpos / sec, More Is Better Fhourstones 3.1 Complex Connect-4 Solving GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 2K 4K 6K 8K 10K SE +/- 22.37, N = 3 SE +/- 5.11, N = 3 SE +/- 5.30, N = 3 8643.40 8631.43 8551.90 1. (CC) gcc options: -O3
GMPbench Total Time OpenBenchmarking.org GMPbench Score, More Is Better GMPbench 0.2 Total Time GCC 4.6.3 GCC 4.7.0 400 800 1200 1600 2000 1739.00 1751.20 1. (CC) gcc options: -O3 -march=native
Timed MrBayes Analysis Primate Phylogeny Analysis OpenBenchmarking.org Seconds, Fewer Is Better Timed MrBayes Analysis 3.1.2 Primate Phylogeny Analysis GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.1 SVN 9 18 27 36 45 SE +/- 0.03, N = 3 SE +/- 0.09, N = 3 SE +/- 0.25, N = 3 37.07 32.38 40.09
Timed MAFFT Alignment Multiple Sequence Alignment OpenBenchmarking.org Seconds, Fewer Is Better Timed MAFFT Alignment 6.864 Multiple Sequence Alignment GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 4 8 12 16 20 SE +/- 0.18, N = 6 SE +/- 0.04, N = 3 SE +/- 0.28, N = 4 SE +/- 0.07, N = 3 13.73 13.60 16.14 14.73 1. (CC) gcc options: -O3 -lm -lpthread
Timed HMMer Search Pfam Database Search OpenBenchmarking.org Seconds, Fewer Is Better Timed HMMer Search 2.3.2 Pfam Database Search GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN 8 16 24 32 40 SE +/- 0.03, N = 3 SE +/- 0.01, N = 3 SE +/- 0.04, N = 3 SE +/- 0.06, N = 3 26.52 26.63 33.02 32.63 1. (CC) gcc options: -O3 -march=native -pthread -lhmmer -lsquid -lm
FFTE Test: N=64, 1D Complex FFT Routine OpenBenchmarking.org MFLOPS, More Is Better FFTE 5.0 Test: N=64, 1D Complex FFT Routine GCC 4.6.3 GCC 4.7.0 LLVM-Clang 3.0 LLVM-Clang 3.1 SVN Open64 5.0 700 1400 2100 2800 3500 SE +/- 11.98, N = 3 SE +/- 48.14, N = 3 SE +/- 7.30, N = 3 SE +/- 29.94, N = 3 SE +/- 6.76, N = 3 3276.19 3156.92 3270.19 3197.68 3267.81 1. (F9X) gfortran options: -O3 -fomit-frame-pointer -fopenmp -pthread -lmpi_f90 -lmpi_f77 -lmpi -lopen-rte -lopen-pal -ldl -lnsl -lutil -lm
Phoronix Test Suite v10.8.5