LLVM Clang vs. GCC On ARM Cortex-A15 ARM Cortex-A15 compiler benchmarks of GCC 4.6, 4.7, and 4.8 compared to LLVM/Clang 3.0 on the Samsung Chromebook with Samsung Exynos 5 Dual. Benchmarks for a future article on Phoronix.com.
HTML result view exported from: https://openbenchmarking.org/result/1212019-RA-LLVMCLANG39&sor&grt .
LLVM Clang vs. GCC On ARM Cortex-A15 Processor Motherboard Memory Disk OS Kernel Desktop Display Server Compiler File-System Screen Resolution GCC 4.6.3 GCC 4.7.2 GCC 4.8.0 SVN LLVM Clang 3.0 Exynos ARMv7 rev 4 @ 1.70GHz (2 Cores) SAMSUNG EXYNOS5 (Flattened Device Tree) 2048MB 16GB SEM16G Ubuntu 12.04 3.4.0 (armv7l) Unity 2D 5.16.0 X Server 1.11.3 GCC 4.6 ext4 1366x768 GCC 4.7 GCC 4.8.0 20121008 Clang 3.0-6ubuntu3 OpenBenchmarking.org Compiler Details - GCC 4.6.3: --build=arm-linux-gnueabihf --disable-sjlj-exceptions --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-languages=c,c++,fortran,objc,obj-c++ --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multilib --enable-nls --enable-objc-gc --enable-plugin --enable-shared --enable-threads=posix --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf --with-arch=armv7-a --with-float=hard --with-fpu=vfpv3-d16 --with-mode=thumb -v - GCC 4.7.2: --build=arm-linux-gnueabihf --disable-libitm --disable-sjlj-exceptions --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-languages=c,c++,go,fortran,objc,obj-c++ --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multilib --enable-nls --enable-objc-gc --enable-plugin --enable-shared --enable-threads=posix --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf --with-arch=armv7-a --with-float=hard --with-fpu=vfpv3-d16 --with-mode=thumb -v - GCC 4.8.0 SVN: --build=arm-linux-gnueabihf --disable-libitm --disable-nls --disable-sjlj-exceptions --disable-werror --enable-checking=yes --enable-clocale=gnu --enable-gnu-unique-object --enable-languages=c,ada,c++,go,fortran,objc,obj-c++ --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multilib --enable-plugin --enable-shared --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf --with-arch=armv7-a --with-float=hard --with-fpu=vfpv3-d16 --with-mode=thumb -v Processor Details - Scaling Governor: ondemand
LLVM Clang vs. GCC On ARM Cortex-A15 c-ray: Total Time graphics-magick: Blur graphics-magick: Sharpen graphics-magick: Resizing graphics-magick: HWB Color Space graphics-magick: Local Adaptive Thresholding primesieve: 1e12 Prime Number Generation hmmer: Pfam Database Search mrbayes: Primate Phylogeny Analysis GCC 4.6.3 GCC 4.7.2 GCC 4.8.0 SVN LLVM Clang 3.0 435.43 32 23 40 50 22 883.94 124.30 201.62 313.32 32 23 40 47 23 866.18 114.98 200.22 313.27 32 23 40 47 23 886.19 124.65 197.95 508.53 19 11 22 39 13 1507.90 131.65 226.50 OpenBenchmarking.org
C-Ray Total Time OpenBenchmarking.org Seconds, Fewer Is Better C-Ray 1.1 Total Time GCC 4.8.0 SVN GCC 4.7.2 GCC 4.6.3 LLVM Clang 3.0 110 220 330 440 550 SE +/- 3.69, N = 3 SE +/- 0.82, N = 3 SE +/- 2.09, N = 3 SE +/- 0.92, N = 3 313.27 313.32 435.43 508.53 1. (CC) gcc options: -lm -lpthread -O3
GraphicsMagick Operation: Blur OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.16 Operation: Blur GCC 4.8.0 SVN GCC 4.7.2 GCC 4.6.3 LLVM Clang 3.0 7 14 21 28 35 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.33, N = 3 SE +/- 0.00, N = 3 32 32 32 19 -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp 1. (CC) gcc options: -O2 -pthread -lbz2 -lz -lm -lpthread
GraphicsMagick Operation: Sharpen OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.16 Operation: Sharpen GCC 4.8.0 SVN GCC 4.7.2 GCC 4.6.3 LLVM Clang 3.0 6 12 18 24 30 SE +/- 0.00, N = 3 SE +/- 0.33, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 23 23 23 11 -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp 1. (CC) gcc options: -O2 -pthread -lbz2 -lz -lm -lpthread
GraphicsMagick Operation: Resizing OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.16 Operation: Resizing GCC 4.8.0 SVN GCC 4.7.2 GCC 4.6.3 LLVM Clang 3.0 9 18 27 36 45 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 40 40 40 22 -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp 1. (CC) gcc options: -O2 -pthread -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.6.3 GCC 4.8.0 SVN GCC 4.7.2 LLVM Clang 3.0 11 22 33 44 55 SE +/- 0.33, N = 3 SE +/- 0.33, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 50 47 47 39 -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp 1. (CC) gcc options: -O2 -pthread -lbz2 -lz -lm -lpthread
GraphicsMagick Operation: Local Adaptive Thresholding OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.16 Operation: Local Adaptive Thresholding GCC 4.8.0 SVN GCC 4.7.2 GCC 4.6.3 LLVM Clang 3.0 6 12 18 24 30 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 23 23 22 13 -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp 1. (CC) gcc options: -O2 -pthread -lbz2 -lz -lm -lpthread
Primesieve 1e12 Prime Number Generation OpenBenchmarking.org Seconds, Fewer Is Better Primesieve 4.0 1e12 Prime Number Generation GCC 4.7.2 GCC 4.6.3 GCC 4.8.0 SVN LLVM Clang 3.0 300 600 900 1200 1500 SE +/- 16.56, N = 3 SE +/- 18.65, N = 6 SE +/- 22.70, N = 6 SE +/- 2.23, N = 3 866.18 883.94 886.19 1507.90 -fopenmp -fopenmp -fopenmp 1. (CXX) g++ options: -O2
Timed HMMer Search Pfam Database Search OpenBenchmarking.org Seconds, Fewer Is Better Timed HMMer Search 2.3.2 Pfam Database Search GCC 4.7.2 GCC 4.6.3 GCC 4.8.0 SVN LLVM Clang 3.0 30 60 90 120 150 SE +/- 0.11, N = 3 SE +/- 0.14, N = 3 SE +/- 0.06, N = 3 SE +/- 2.57, N = 3 114.98 124.30 124.65 131.65 1. (CC) gcc options: -O2 -pthread -lhmmer -lsquid -lm
Timed MrBayes Analysis Primate Phylogeny Analysis OpenBenchmarking.org Seconds, Fewer Is Better Timed MrBayes Analysis 3.1.2 Primate Phylogeny Analysis GCC 4.8.0 SVN GCC 4.7.2 GCC 4.6.3 LLVM Clang 3.0 50 100 150 200 250 SE +/- 1.07, N = 3 SE +/- 0.32, N = 3 SE +/- 1.49, N = 3 SE +/- 1.50, N = 3 197.95 200.22 201.62 226.50
Phoronix Test Suite v10.8.5