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&rdt&grw .
LLVM Clang vs. GCC On ARM Cortex-A15 Processor Motherboard Memory Disk OS Kernel Desktop Display Server Compiler File-System Screen Resolution LLVM Clang 3.0 GCC 4.7.2 GCC 4.8.0 SVN GCC 4.6.3 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 Clang 3.0-6ubuntu3 ext4 1366x768 GCC 4.7 GCC 4.8.0 20121008 GCC 4.6 OpenBenchmarking.org Processor Details - Scaling Governor: ondemand Compiler Details - 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 - 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
LLVM Clang vs. GCC On ARM Cortex-A15 hmmer: Pfam Database Search mrbayes: Primate Phylogeny Analysis primesieve: 1e12 Prime Number Generation graphics-magick: Blur graphics-magick: Sharpen graphics-magick: Resizing graphics-magick: HWB Color Space graphics-magick: Local Adaptive Thresholding c-ray: Total Time LLVM Clang 3.0 GCC 4.7.2 GCC 4.8.0 SVN GCC 4.6.3 131.65 226.50 1507.90 19 11 22 39 13 508.53 114.98 200.22 866.18 32 23 40 47 23 313.32 124.65 197.95 886.19 32 23 40 47 23 313.27 124.30 201.62 883.94 32 23 40 50 22 435.43 OpenBenchmarking.org
Timed HMMer Search Pfam Database Search OpenBenchmarking.org Seconds, Fewer Is Better Timed HMMer Search 2.3.2 Pfam Database Search LLVM Clang 3.0 GCC 4.7.2 GCC 4.8.0 SVN GCC 4.6.3 30 60 90 120 150 SE +/- 2.57, N = 3 SE +/- 0.11, N = 3 SE +/- 0.06, N = 3 SE +/- 0.14, N = 3 131.65 114.98 124.65 124.30 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 LLVM Clang 3.0 GCC 4.7.2 GCC 4.8.0 SVN GCC 4.6.3 50 100 150 200 250 SE +/- 1.50, N = 3 SE +/- 0.32, N = 3 SE +/- 1.07, N = 3 SE +/- 1.49, N = 3 226.50 200.22 197.95 201.62
Primesieve 1e12 Prime Number Generation OpenBenchmarking.org Seconds, Fewer Is Better Primesieve 4.0 1e12 Prime Number Generation LLVM Clang 3.0 GCC 4.7.2 GCC 4.8.0 SVN GCC 4.6.3 300 600 900 1200 1500 SE +/- 2.23, N = 3 SE +/- 16.56, N = 3 SE +/- 22.70, N = 6 SE +/- 18.65, N = 6 1507.90 866.18 886.19 883.94 -fopenmp -fopenmp -fopenmp 1. (CXX) g++ options: -O2
GraphicsMagick Operation: Blur OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.16 Operation: Blur LLVM Clang 3.0 GCC 4.7.2 GCC 4.8.0 SVN GCC 4.6.3 7 14 21 28 35 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.33, N = 3 19 32 32 32 -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 LLVM Clang 3.0 GCC 4.7.2 GCC 4.8.0 SVN GCC 4.6.3 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 11 23 23 23 -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 LLVM Clang 3.0 GCC 4.7.2 GCC 4.8.0 SVN GCC 4.6.3 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 22 40 40 40 -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 LLVM Clang 3.0 GCC 4.7.2 GCC 4.8.0 SVN GCC 4.6.3 11 22 33 44 55 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.33, N = 3 SE +/- 0.33, N = 3 39 47 47 50 -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 LLVM Clang 3.0 GCC 4.7.2 GCC 4.8.0 SVN GCC 4.6.3 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 13 23 23 22 -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp -std=gnu99 -fopenmp -lgomp 1. (CC) gcc options: -O2 -pthread -lbz2 -lz -lm -lpthread
C-Ray Total Time OpenBenchmarking.org Seconds, Fewer Is Better C-Ray 1.1 Total Time LLVM Clang 3.0 GCC 4.7.2 GCC 4.8.0 SVN GCC 4.6.3 110 220 330 440 550 SE +/- 0.92, N = 3 SE +/- 0.82, N = 3 SE +/- 3.69, N = 3 SE +/- 2.09, N = 3 508.53 313.32 313.27 435.43 1. (CC) gcc options: -lm -lpthread -O3
Phoronix Test Suite v10.8.5