GCC 4.8 vs. LLVM Clang 3.3 SVN Compiler Benchmarking

GCC 4.7.2 versus GCC 4.8.0 versus LLVM Clang 3.2 versus LLVM Clang 3.3 SVN compiler benchmarking from an Intel Core i7 990X Gulftown system running Ubuntu 13.04 Linux. Compiler GCC benchmarks for a future article on Phoronix.com.

HTML result view exported from: https://openbenchmarking.org/result/1303255-FO-GCC48LLVM06&sor&gru.

GCC 4.8 vs. LLVM Clang 3.3 SVN Compiler BenchmarkingProcessorMotherboardChipsetMemoryDiskGraphicsAudioNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionGCC 4.7.2GCC 4.8.0LLVM Clang 3.2LLVM Clang 3.3 SVNIntel Core i7 990X @ 3.47GHz (12 Cores)MSI X58M (MS-7593) v1.0Intel 5520/5500/X58 + ICH10R12288MB1000GB Western Digital WD1003FBYX-0NVIDIA GeForce 8400 GS 512MB (500/333MHz)Realtek ALC889Realtek RTL8111/8168BUbuntu 13.043.8.0-12-generic (x86_64)Unity 6.6.0X Server 1.13.2NVIDIA 313.263.3.0 NVIDIA 313.26GCC 4.7.2ext41920x1080GCC 4.7Clang 3.2 + LLVM 3.2svnClang 3.3 (SVN 177878) + LLVM 3.3svnOpenBenchmarking.orgCompiler Details- GCC 4.7.2: --enable-checking=release --enable-languages=c,c++,fortran --enable-lto- GCC 4.8.0: --build=x86_64-linux-gnu --disable-cloog-version-check --disable-ppl-version-check --disable-werror --enable-checking=release --enable-clocale=gnu --enable-cloog-backend=ppl --enable-gnu-unique-object --enable-languages=c,c++,go,fortran,objc,obj-c++ --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-nls --enable-objc-gc --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-cloog --with-multilib-list=m32,m64,mx32 --with-tune=generic -v - LLVM Clang 3.2: Optimized build; Built Mar 25 2013 (15:48:44); Default target: x86_64-unknown-linux-gnu; Host CPU: corei7- LLVM Clang 3.3 SVN: Optimized build; Built Mar 25 2013 (12:54:43); Default target: x86_64-unknown-linux-gnu; Host CPU: corei7Processor Details- Scaling Governor: ondemandOpenCL Details- GCC 4.8.0: GPU Compute Cores: 8System Details- GCC 4.8.0: GPU Compute Cores: 8.

GCC 4.8 vs. LLVM Clang 3.3 SVN Compiler Benchmarkingbotan: Tigerbotan: KASUMIbotan: AES-256botan: Twofishbotan: CAST-256botan: X9.19-MAChimeno: Poisson Pressure Solverjohn-the-ripper: Blowfishjohn-the-ripper: Traditional DESjohn-the-ripper: MD5blake2: Phoronix Test Suite v4.4.1lammps: Rhodopsin Proteinmafft: Multiple Sequence Alignmentbuild-imagemagick: Time To Compilec-ray: Total Timeprimesieve: 1e12 Prime Number Generationsmallpt: Global Illumination Renderer; 100 Samplesencode-flac: WAV To FLACencode-mp3: WAV To MP3ffmpeg: H.264 HD To NTSC DVminion: Gracefulminion: Solitaireminion: Quasigroupn-queens: Elapsed TimeGCC 4.7.2GCC 4.8.0LLVM Clang 3.2LLVM Clang 3.3 SVN360.4339.35154.60175.1385.7177.121527.025.9649.365.6758.0523.7866.67326.9917.2319.0671.58107.44157.8128.82376.2637.91133.38172.7187.3776.191337.12727212345000339966.1648.465.7259.6718.8366.79326.9417.0019.3572.40103.05153.9329.66357.4039.34154.74175.1385.5676.771487.339014102667259876.7749.716.1925.0323.7866.57317.9817.4119.2471.84108.48156.36257.21381.8965.75144.74169.82109.4374.871499.509094105667285856.8541.366.1324.7923.74419.762857.8816.8319.3170.29114.74159.10257.21OpenBenchmarking.org

Botan

Test: Tiger

OpenBenchmarking.orgMbytes/s, More Is BetterBotan 1.10.3Test: TigerLLVM Clang 3.3 SVNGCC 4.8.0GCC 4.7.2LLVM Clang 3.280160240320400381.89376.26360.43357.401. (CXX) g++ options: -m64 -ldl -lpthread -lrt

Botan

Test: KASUMI

OpenBenchmarking.orgMbytes/s, More Is BetterBotan 1.10.3Test: KASUMILLVM Clang 3.3 SVNGCC 4.7.2LLVM Clang 3.2GCC 4.8.0153045607565.7539.3539.3437.911. (CXX) g++ options: -m64 -ldl -lpthread -lrt

Botan

Test: AES-256

OpenBenchmarking.orgMbytes/s, More Is BetterBotan 1.10.3Test: AES-256LLVM Clang 3.2GCC 4.7.2LLVM Clang 3.3 SVNGCC 4.8.0306090120150154.74154.60144.74133.381. (CXX) g++ options: -m64 -ldl -lpthread -lrt

Botan

Test: Twofish

OpenBenchmarking.orgMbytes/s, More Is BetterBotan 1.10.3Test: TwofishLLVM Clang 3.2GCC 4.7.2GCC 4.8.0LLVM Clang 3.3 SVN4080120160200175.13175.13172.71169.821. (CXX) g++ options: -m64 -ldl -lpthread -lrt

Botan

Test: CAST-256

OpenBenchmarking.orgMbytes/s, More Is BetterBotan 1.10.3Test: CAST-256LLVM Clang 3.3 SVNGCC 4.8.0GCC 4.7.2LLVM Clang 3.220406080100109.4387.3785.7185.561. (CXX) g++ options: -m64 -ldl -lpthread -lrt

Botan

Test: X9.19-MAC

OpenBenchmarking.orgMbytes/s, More Is BetterBotan 1.10.3Test: X9.19-MACGCC 4.7.2LLVM Clang 3.2GCC 4.8.0LLVM Clang 3.3 SVN2040608010077.1276.7776.1974.871. (CXX) g++ options: -m64 -ldl -lpthread -lrt

Himeno Benchmark

Poisson Pressure Solver

OpenBenchmarking.orgMFLOPS, More Is BetterHimeno Benchmark 3.0Poisson Pressure SolverGCC 4.7.2LLVM Clang 3.3 SVNLLVM Clang 3.2GCC 4.8.030060090012001500SE +/- 2.54, N = 3SE +/- 2.56, N = 3SE +/- 2.43, N = 3SE +/- 5.16, N = 31527.021499.501487.331337.121. (CC) gcc options: -O3 -march=native

John The Ripper

Test: Blowfish

OpenBenchmarking.orgReal C/S, More Is BetterJohn The Ripper 1.7.9-jumbo-7Test: BlowfishGCC 4.8.0LLVM Clang 3.3 SVNLLVM Clang 3.216003200480064008000SE +/- 0.33, N = 3SE +/- 0.67, N = 3SE +/- 1.76, N = 372729099011. (CC) gcc options: -lssl -lcrypto -lm -lz -fopenmp -lcrypt -ldl

John The Ripper

Test: Traditional DES

OpenBenchmarking.orgReal C/S, More Is BetterJohn The Ripper 1.7.9-jumbo-7Test: Traditional DESGCC 4.8.0LLVM Clang 3.3 SVNLLVM Clang 3.23M6M9M12M15MSE +/- 41000.00, N = 3SE +/- 6691.62, N = 3SE +/- 1855.92, N = 312345000410566741026671. (CC) gcc options: -lssl -lcrypto -lm -lz -fopenmp -lcrypt -ldl

John The Ripper

Test: MD5

OpenBenchmarking.orgReal C/S, More Is BetterJohn The Ripper 1.7.9-jumbo-7Test: MD5GCC 4.8.0LLVM Clang 3.3 SVNLLVM Clang 3.27K14K21K28K35KSE +/- 31.75, N = 3SE +/- 75.88, N = 3SE +/- 52.07, N = 33399628585259871. (CC) gcc options: -lssl -lcrypto -lm -lz -fopenmp -lcrypt -ldl

BLAKE2

Phoronix Test Suite v4.4.1

OpenBenchmarking.orgCycles Per Byte, Fewer Is BetterBLAKE2 20121223Phoronix Test Suite v4.4.1GCC 4.7.2GCC 4.8.0LLVM Clang 3.2LLVM Clang 3.3 SVN246810SE +/- 0.03, N = 3SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.05, N = 35.966.166.776.851. (CC) gcc options: -std=gnu99 -O3 -march=native

LAMMPS Molecular Dynamics Simulator

Test: Rhodopsin Protein

OpenBenchmarking.orgLoop Time, Fewer Is BetterLAMMPS Molecular Dynamics Simulator 1.0Test: Rhodopsin ProteinLLVM Clang 3.3 SVNGCC 4.8.0GCC 4.7.2LLVM Clang 3.21122334455SE +/- 0.09, N = 3SE +/- 0.14, N = 3SE +/- 0.18, N = 3SE +/- 0.07, N = 341.3648.4649.3649.711. (CXX) g++ options: -lfftw -lmpich

Timed MAFFT Alignment

Multiple Sequence Alignment

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed MAFFT Alignment 6.864Multiple Sequence AlignmentGCC 4.7.2GCC 4.8.0LLVM Clang 3.3 SVNLLVM Clang 3.2246810SE +/- 0.09, N = 6SE +/- 0.10, N = 3SE +/- 0.13, N = 6SE +/- 0.06, N = 35.675.726.136.191. (CC) gcc options: -O3 -lm -lpthread

Timed ImageMagick Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed ImageMagick Compilation 6.8.1-10Time To CompileLLVM Clang 3.3 SVNLLVM Clang 3.2GCC 4.7.2GCC 4.8.01326395265SE +/- 0.10, N = 3SE +/- 0.11, N = 3SE +/- 0.07, N = 3SE +/- 0.12, N = 324.7925.0358.0559.67

C-Ray

Total Time

OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total TimeGCC 4.8.0LLVM Clang 3.3 SVNGCC 4.7.2LLVM Clang 3.2612182430SE +/- 0.00, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 318.8323.7423.7823.781. (CC) gcc options: -lm -lpthread -O3 -march=native

Primesieve

1e12 Prime Number Generation

OpenBenchmarking.orgSeconds, Fewer Is BetterPrimesieve 4.21e12 Prime Number GenerationLLVM Clang 3.2GCC 4.7.2GCC 4.8.0LLVM Clang 3.3 SVN90180270360450SE +/- 0.04, N = 3SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.45, N = 366.5766.6766.79419.76-fopenmp-fopenmp-fopenmp1. (CXX) g++ options: -O2

Smallpt

Global Illumination Renderer; 100 Samples

OpenBenchmarking.orgSeconds, Fewer Is BetterSmallpt 1.0Global Illumination Renderer; 100 SamplesLLVM Clang 3.2GCC 4.7.2GCC 4.8.0LLVM Clang 3.3 SVN60120180240300SE +/- 0.33, N = 3SE +/- 0.33, N = 3SE +/- 0.00, N = 3SE +/- 0.33, N = 33132322851. (CXX) g++ options: -fopenmp -O3 -march=native

FLAC Audio Encoding

WAV To FLAC

OpenBenchmarking.orgSeconds, Fewer Is BetterFLAC Audio Encoding 1.2.1WAV To FLACGCC 4.8.0GCC 4.7.2LLVM Clang 3.3 SVNLLVM Clang 3.2246810SE +/- 0.01, N = 5SE +/- 0.01, N = 5SE +/- 0.01, N = 5SE +/- 0.02, N = 56.946.997.887.981. (CXX) g++ options: -O3 -march=native -logg -lm

LAME MP3 Encoding

WAV To MP3

OpenBenchmarking.orgSeconds, Fewer Is BetterLAME MP3 Encoding 3.99.3WAV To MP3LLVM Clang 3.3 SVNGCC 4.8.0GCC 4.7.2LLVM Clang 3.248121620SE +/- 0.02, N = 5SE +/- 0.01, N = 5SE +/- 0.01, N = 5SE +/- 0.04, N = 516.8317.0017.2317.41

FFmpeg

H.264 HD To NTSC DV

OpenBenchmarking.orgSeconds, Fewer Is BetterFFmpeg 1.1H.264 HD To NTSC DVGCC 4.7.2LLVM Clang 3.2LLVM Clang 3.3 SVNGCC 4.8.0510152025SE +/- 0.07, N = 3SE +/- 0.04, N = 3SE +/- 0.19, N = 3SE +/- 0.18, N = 319.0619.2419.3119.351. (CC) gcc options: -lavdevice -lavfilter -lavformat -lavcodec -lswresample -lswscale -lavutil -ldl -lasound -lSDL -lm -pthread -lbz2

Minion

Benchmark: Graceful

OpenBenchmarking.orgSeconds, Fewer Is BetterMinion 0.15Benchmark: GracefulLLVM Clang 3.3 SVNGCC 4.7.2LLVM Clang 3.2GCC 4.8.01632486480SE +/- 0.35, N = 3SE +/- 0.37, N = 3SE +/- 0.08, N = 3SE +/- 0.38, N = 370.2971.5871.8472.40-lz -lbz2-lz -lbz2-lz -lbz21. (CXX) g++ options: -O3 -fomit-frame-pointer -rdynamic -lboost_iostreams-mt

Minion

Benchmark: Solitaire

OpenBenchmarking.orgSeconds, Fewer Is BetterMinion 0.15Benchmark: SolitaireGCC 4.8.0GCC 4.7.2LLVM Clang 3.2LLVM Clang 3.3 SVN306090120150SE +/- 0.82, N = 3SE +/- 0.76, N = 3SE +/- 0.76, N = 3SE +/- 0.68, N = 3103.05107.44108.48114.74-lz -lbz2-lz -lbz2-lz -lbz21. (CXX) g++ options: -O3 -fomit-frame-pointer -rdynamic -lboost_iostreams-mt

Minion

Benchmark: Quasigroup

OpenBenchmarking.orgSeconds, Fewer Is BetterMinion 0.15Benchmark: QuasigroupGCC 4.8.0LLVM Clang 3.2GCC 4.7.2LLVM Clang 3.3 SVN4080120160200SE +/- 0.44, N = 3SE +/- 0.42, N = 3SE +/- 0.19, N = 3SE +/- 0.55, N = 3153.93156.36157.81159.10-lz -lbz2-lz -lbz2-lz -lbz21. (CXX) g++ options: -O3 -fomit-frame-pointer -rdynamic -lboost_iostreams-mt

N-Queens

Elapsed Time

OpenBenchmarking.orgSeconds, Fewer Is BetterN-Queens 1.0Elapsed TimeGCC 4.7.2GCC 4.8.0LLVM Clang 3.2LLVM Clang 3.3 SVN60120180240300SE +/- 0.02, N = 3SE +/- 0.13, N = 3SE +/- 0.04, N = 3SE +/- 0.05, N = 328.8229.66257.21257.211. (CC) gcc options: -static -fopenmp -O3 -march=native


Phoronix Test Suite v10.8.5