FreeBSD 9.1 Compilers: GCC vs. LLVM/Clang With FreeBSD/PC-BSD 9.1 comparing the performance of the stock compilers: GCC 4.2.1 versus LLVM/Clang 3.1 on an Intel Core i7 3960X Extreme Edition system. FreeBSD/PC-BSD 9.1 x64/amd64 with stock packages/settings. Testing for a future article on Phoronix.com.
HTML result view exported from: https://openbenchmarking.org/result/1301299-FO-CLANGFREE98&grr .
FreeBSD 9.1 Compilers: GCC vs. LLVM/Clang Processor Motherboard Memory Disk Graphics Audio OS Kernel Desktop Display Server Display Driver OpenGL Compiler File-System Screen Resolution GCC 4.2.1 LLVM Clang 3.1 Intel Core i7-3770K @ 3.50GHz (8 Cores) ECS Z77H2-A2X 1.0 8192MB OCZ VERTEX2 1.10 NVIDIA GeForce GTX 460 768MB (675/1800MHz) NVIDIA GT104 HDA FreeBSD 9.1-RELEASE (x86_64) KDE 4.9.3 X Server 1.10.6 NVIDIA 304.64 4.2.0 NVIDIA 304.64 GCC 4.2.1 20070831 + Clang 3.1 (SVN 156863) zfs 1920x1080 Clang 3.1 (SVN 156863) OpenBenchmarking.org System Details - Python 2.7.3.
FreeBSD 9.1 Compilers: GCC vs. LLVM/Clang openssl: RSA 4096-bit Performance n-queens: Elapsed Time encode-mp3: WAV To MP3 primesieve: 1e12 Prime Number Generation c-ray: Total Time build-php: Time To Compile compress-7zip: Compress Speed Test himeno: Poisson Pressure Solver graphics-magick: Local Adaptive Thresholding graphics-magick: HWB Color Space graphics-magick: Resizing graphics-magick: Sharpen graphics-magick: Blur scimark2: Jacobi Successive Over-Relaxation scimark2: Dense LU Matrix Factorization scimark2: Sparse Matrix Multiply scimark2: Fast Fourier Transform scimark2: Monte Carlo botan: X9.19-MAC botan: CAST-256 botan: Twofish botan: AES-256 botan: KASUMI botan: Tiger hmmer: Pfam Database Search postmark: Disk Transaction Performance compilebench: Initial Create compilebench: Compile blogbench: Write blogbench: Read GCC 4.2.1 LLVM Clang 3.1 122.80 38.64 14.90 92.04 44.47 25.39 19059 792.30 112 177 149 90 116 1114.86 2232.78 2175.48 329.66 552.24 83.50 89.07 189.44 175.12 68.48 314.25 13.05 390 112.31 141.21 2065 655790 123.07 218.21 14.94 372.22 40.52 25.38 18576 891.34 42 127 97 50 74 1592.82 2920.54 2355.30 329.92 585.47 77.99 105.88 183.68 174.50 61.49 368.14 12.70 379 146.38 182.96 2027 683983 OpenBenchmarking.org
OpenSSL RSA 4096-bit Performance OpenBenchmarking.org Signs Per Second, More Is Better OpenSSL 1.0.1c RSA 4096-bit Performance GCC 4.2.1 LLVM Clang 3.1 30 60 90 120 150 SE +/- 0.10, N = 3 SE +/- 0.09, N = 3 122.80 123.07 1. (CC) gcc options: -pthread -O3 -lssl -lcrypto
N-Queens Elapsed Time OpenBenchmarking.org Seconds, Fewer Is Better N-Queens 1.0 Elapsed Time GCC 4.2.1 LLVM Clang 3.1 50 100 150 200 250 SE +/- 0.01, N = 3 SE +/- 0.02, N = 3 38.64 218.21 1. (CC) gcc options: -static -fopenmp -O3
LAME MP3 Encoding WAV To MP3 OpenBenchmarking.org Seconds, Fewer Is Better LAME MP3 Encoding 3.99.3 WAV To MP3 GCC 4.2.1 LLVM Clang 3.1 4 8 12 16 20 SE +/- 0.11, N = 5 SE +/- 0.11, N = 5 14.90 14.94
Primesieve 1e12 Prime Number Generation OpenBenchmarking.org Seconds, Fewer Is Better Primesieve 4.0 1e12 Prime Number Generation GCC 4.2.1 LLVM Clang 3.1 80 160 240 320 400 SE +/- 0.04, N = 3 SE +/- 0.03, N = 3 92.04 372.22 -fopenmp 1. (CXX) g++ options: -O2
C-Ray Total Time OpenBenchmarking.org Seconds, Fewer Is Better C-Ray 1.1 Total Time GCC 4.2.1 LLVM Clang 3.1 10 20 30 40 50 SE +/- 0.08, N = 3 SE +/- 0.05, N = 3 44.47 40.52 1. (CC) gcc options: -lm -lpthread -O3
Timed PHP Compilation Time To Compile OpenBenchmarking.org Seconds, Fewer Is Better Timed PHP Compilation 5.2.9 Time To Compile GCC 4.2.1 LLVM Clang 3.1 6 12 18 24 30 SE +/- 0.14, N = 3 SE +/- 0.11, N = 3 25.39 25.38 1. (CC) gcc options: -O2 -pedantic -lpthread -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.2.1 LLVM Clang 3.1 4K 8K 12K 16K 20K SE +/- 177.11, N = 3 SE +/- 308.37, N = 6 19059 18576 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.2.1 LLVM Clang 3.1 200 400 600 800 1000 SE +/- 6.52, N = 3 SE +/- 7.29, N = 3 792.30 891.34 1. (CC) gcc options: -O3
GraphicsMagick Operation: Local Adaptive Thresholding OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.16 Operation: Local Adaptive Thresholding GCC 4.2.1 LLVM Clang 3.1 30 60 90 120 150 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 112 42 -std=gnu99 -fopenmp -lgomp 1. (CC) gcc options: -O2 -pthread -llcms2 -ljbig -lrpcsvc -llzma -lbz2 -lz -lm -lpthread
GraphicsMagick Operation: HWB Color Space OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.16 Operation: HWB Color Space GCC 4.2.1 LLVM Clang 3.1 40 80 120 160 200 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 177 127 -std=gnu99 -fopenmp -lgomp 1. (CC) gcc options: -O2 -pthread -llcms2 -ljbig -lrpcsvc -llzma -lbz2 -lz -lm -lpthread
GraphicsMagick Operation: Resizing OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.16 Operation: Resizing GCC 4.2.1 LLVM Clang 3.1 30 60 90 120 150 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 149 97 -std=gnu99 -fopenmp -lgomp 1. (CC) gcc options: -O2 -pthread -llcms2 -ljbig -lrpcsvc -llzma -lbz2 -lz -lm -lpthread
GraphicsMagick Operation: Sharpen OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.16 Operation: Sharpen GCC 4.2.1 LLVM Clang 3.1 20 40 60 80 100 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 90 50 -std=gnu99 -fopenmp -lgomp 1. (CC) gcc options: -O2 -pthread -llcms2 -ljbig -lrpcsvc -llzma -lbz2 -lz -lm -lpthread
GraphicsMagick Operation: Blur OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.16 Operation: Blur GCC 4.2.1 LLVM Clang 3.1 30 60 90 120 150 SE +/- 0.00, N = 3 SE +/- 0.33, N = 3 116 74 -std=gnu99 -fopenmp -lgomp 1. (CC) gcc options: -O2 -pthread -llcms2 -ljbig -lrpcsvc -llzma -lbz2 -lz -lm -lpthread
SciMark Computational Test: Jacobi Successive Over-Relaxation OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Jacobi Successive Over-Relaxation GCC 4.2.1 LLVM Clang 3.1 300 600 900 1200 1500 SE +/- 0.00, N = 4 SE +/- 0.81, N = 4 1114.86 1592.82
SciMark Computational Test: Dense LU Matrix Factorization OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Dense LU Matrix Factorization GCC 4.2.1 LLVM Clang 3.1 600 1200 1800 2400 3000 SE +/- 3.49, N = 4 SE +/- 5.99, N = 4 2232.78 2920.54
SciMark Computational Test: Sparse Matrix Multiply OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Sparse Matrix Multiply GCC 4.2.1 LLVM Clang 3.1 500 1000 1500 2000 2500 SE +/- 2.61, N = 4 SE +/- 14.73, N = 4 2175.48 2355.30
SciMark Computational Test: Fast Fourier Transform OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Fast Fourier Transform GCC 4.2.1 LLVM Clang 3.1 70 140 210 280 350 SE +/- 1.48, N = 4 SE +/- 1.81, N = 4 329.66 329.92
SciMark Computational Test: Monte Carlo OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Monte Carlo GCC 4.2.1 LLVM Clang 3.1 130 260 390 520 650 SE +/- 0.28, N = 4 SE +/- 0.36, N = 4 552.24 585.47
Botan Test: X9.19-MAC OpenBenchmarking.org Mbytes/s, More Is Better Botan 1.10.3 Test: X9.19-MAC GCC 4.2.1 LLVM Clang 3.1 20 40 60 80 100 83.50 77.99 1. (CXX) g++ options: -m64 -pthread -lpthread
Botan Test: CAST-256 OpenBenchmarking.org Mbytes/s, More Is Better Botan 1.10.3 Test: CAST-256 GCC 4.2.1 LLVM Clang 3.1 20 40 60 80 100 89.07 105.88 1. (CXX) g++ options: -m64 -pthread -lpthread
Botan Test: Twofish OpenBenchmarking.org Mbytes/s, More Is Better Botan 1.10.3 Test: Twofish GCC 4.2.1 LLVM Clang 3.1 40 80 120 160 200 189.44 183.68 1. (CXX) g++ options: -m64 -pthread -lpthread
Botan Test: AES-256 OpenBenchmarking.org Mbytes/s, More Is Better Botan 1.10.3 Test: AES-256 GCC 4.2.1 LLVM Clang 3.1 40 80 120 160 200 175.12 174.50 1. (CXX) g++ options: -m64 -pthread -lpthread
Botan Test: KASUMI OpenBenchmarking.org Mbytes/s, More Is Better Botan 1.10.3 Test: KASUMI GCC 4.2.1 LLVM Clang 3.1 15 30 45 60 75 68.48 61.49 1. (CXX) g++ options: -m64 -pthread -lpthread
Botan Test: Tiger OpenBenchmarking.org Mbytes/s, More Is Better Botan 1.10.3 Test: Tiger GCC 4.2.1 LLVM Clang 3.1 80 160 240 320 400 314.25 368.14 1. (CXX) g++ options: -m64 -pthread -lpthread
Timed HMMer Search Pfam Database Search OpenBenchmarking.org Seconds, Fewer Is Better Timed HMMer Search 2.3.2 Pfam Database Search GCC 4.2.1 LLVM Clang 3.1 3 6 9 12 15 SE +/- 0.31, N = 6 SE +/- 0.29, N = 6 13.05 12.70 1. (CC) gcc options: -O2 -pthread -lhmmer -lsquid -lm
PostMark Disk Transaction Performance OpenBenchmarking.org TPS, More Is Better PostMark 1.51 Disk Transaction Performance GCC 4.2.1 LLVM Clang 3.1 80 160 240 320 400 SE +/- 2.60, N = 3 SE +/- 2.00, N = 3 390 379 1. (CC) gcc options: -O3
Compile Bench Test: Initial Create OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Initial Create GCC 4.2.1 LLVM Clang 3.1 30 60 90 120 150 SE +/- 1.85, N = 3 SE +/- 2.58, N = 3 112.31 146.38
Compile Bench Test: Compile OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Compile GCC 4.2.1 LLVM Clang 3.1 40 80 120 160 200 SE +/- 4.06, N = 6 SE +/- 25.32, N = 6 141.21 182.96
BlogBench Test: Write OpenBenchmarking.org Final Score, More Is Better BlogBench 1.0 Test: Write GCC 4.2.1 LLVM Clang 3.1 400 800 1200 1600 2000 SE +/- 17.19, N = 3 2065 2027 1. (CC) gcc options: -O2 -pthread
BlogBench Test: Read OpenBenchmarking.org Final Score, More Is Better BlogBench 1.0 Test: Read GCC 4.2.1 LLVM Clang 3.1 150K 300K 450K 600K 750K SE +/- 13571.88, N = 6 SE +/- 23658.25, N = 6 655790 683983 1. (CC) gcc options: -O2 -pthread
Phoronix Test Suite v10.8.4