Ubuntu 12.04 LTS ARMv7 LLVM Clang 3.0 vs. GCC 4.6 Compiler

PandaBoard ES Texas Instruments OMAP4460 ARMv7 dual-core ARM Cortex A9 1.2GHz benchmarking of Ubuntu 12.04 LTS hard-float with Linux 3.2 kernel. This ARMv7 compiler testing of the Precise packages for LLVM Clang 3.0 versus GCC 4.6.3 compilers. Same compiler flags used each time with -O3 CFLAGS/CXXFLAGS. Initial look at LLVM Clang C/C++ compiler performance under dual-core ARMv7 platform dual-core. ARM Linux benchmarking for a future article on Phoronix.com.

Compare your own system(s) to this result file with the Phoronix Test Suite by running the command: phoronix-test-suite benchmark 1204218-SU-ARMCLANG163
Jump To Table - Results

View

Do Not Show Noisy Results
Do Not Show Results With Incomplete Data
Do Not Show Results With Little Change/Spread
List Notable Results

Limit displaying results to tests within:

Chess Test Suite 2 Tests
C/C++ Compiler Tests 7 Tests
CPU Massive 6 Tests
Creator Workloads 4 Tests
Encoding 2 Tests
Multi-Core 6 Tests
Renderers 2 Tests
Server CPU Tests 4 Tests
Single-Threaded 2 Tests
Video Encoding 2 Tests

Statistics

Show Overall Harmonic Mean(s)
Show Overall Geometric Mean
Show Geometric Means Per-Suite/Category
Show Wins / Losses Counts (Pie Chart)
Normalize Results
Remove Outliers Before Calculating Averages

Graph Settings

Force Line Graphs Where Applicable
Convert To Scalar Where Applicable
Disable Color Branding
Prefer Vertical Bar Graphs

Multi-Way Comparison

Condense Multi-Option Tests Into Single Result Graphs

Table

Show Detailed System Result Table

Run Management

Highlight
Result
Hide
Result
Result
Identifier
View Logs
Performance Per
Dollar
Date
Run
  Test
  Duration
ARM GCC 4.6.3
April 20 2012
 
ARM LLVM-Clang 3.0
April 20 2012
 
Invert Hiding All Results Option
 
Only show results matching title/arguments (delimit multiple options with a comma):
Do not show results matching title/arguments (delimit multiple options with a comma):


Ubuntu 12.04 LTS ARMv7 LLVM Clang 3.0 vs. GCC 4.6 CompilerOpenBenchmarking.orgPhoronix Test SuiteARMv7 rev 10 @ 1.20GHz (2 Cores)OMAP4 Panda board904MB16GB SD16GTexas Instruments OMAPUbuntu 12.043.2.0-1412-omap4 (armv7l)Unity 2D 5.10.0X Server 1.11.3fbdev 0.4.2GCC 4.6Clang 4.2.1ext41920x1080ProcessorMotherboardMemoryDiskGraphicsOSKernelDesktopDisplay ServerDisplay DriverCompilersFile-SystemScreen ResolutionUbuntu 12.04 LTS ARMv7 LLVM Clang 3.0 Vs. GCC 4.6 Compiler BenchmarksSystem Logs

ARM GCC 4.6.3 vs. ARM LLVM-Clang 3.0 ComparisonPhoronix Test SuiteBaseline+181.2%+181.2%+362.4%+362.4%+543.6%+543.6%24.6%16.6%J.S.O.R724.8%Monte Carlo579.1%Composite563.9%D.L.M.F555.5%Read512.3%R.M.W470.8%S.M.M448.7%Total Time365.7%F.F.T206.1%WriteA.C.P17.8%Elapsed TimeSciMarkSciMarkSciMarkSciMarkCacheBenchCacheBenchSciMarkC-RaySciMarkCacheBenchTSCPN-QueensARM GCC 4.6.3ARM LLVM-Clang 3.0

Ubuntu 12.04 LTS ARMv7 LLVM Clang 3.0 vs. GCC 4.6 Compilerffte: N=64, 1D Complex FFT Routinecachebench: Readcachebench: Writecachebench: Read / Modify / Writescimark2: Compositescimark2: Monte Carloscimark2: Fast Fourier Transformscimark2: Sparse Matrix Multiplyscimark2: Dense LU Matrix Factorizationscimark2: Jacobi Successive Over-Relaxationtscp: AI Chess Performancecompress-7zip: Compress Speed Testn-queens: Elapsed Timeopenssl: RSA 4096-bit Performancevpxenc: vpxencx264: H.264 Video Encodingc-ray: Total Timesmallpt: Global Illumination Renderer; 100 SamplesARM GCC 4.6.3ARM LLVM-Clang 3.0467.391676.592397.412376.22101.9776.8115.67104.74107.83204.8175346859821.794.601.014.031170.77591467.07273.842987.02416.2915.3611.315.1219.0916.4524.8363969844705.094.605452.07OpenBenchmarking.org

FFTE

FFTE is a package by Daisuke Takahashi to compute Discrete Fourier Transforms of 1-, 2- and 3- dimensional sequences of length (2^p)*(3^q)*(5^r). Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMFLOPS, More Is BetterFFTE 5.0Test: N=64, 1D Complex FFT RoutineARM GCC 4.6.3ARM LLVM-Clang 3.0100200300400500SE +/- 0.31, N = 3SE +/- 1.11, N = 3467.39467.071. (F9X) gfortran options: -O3 -fomit-frame-pointer -fopenmp
OpenBenchmarking.orgMFLOPS, More Is BetterFFTE 5.0Test: N=64, 1D Complex FFT RoutineARM GCC 4.6.3ARM LLVM-Clang 3.080160240320400Min: 466.83 / Avg: 467.39 / Max: 467.9Min: 465.91 / Avg: 467.07 / Max: 469.31. (F9X) gfortran options: -O3 -fomit-frame-pointer -fopenmp

CacheBench

This is a performance test of CacheBench, which is part of LLCbench. CacheBench is designed to test the memory and cache bandwidth performance Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMB/s, More Is BetterCacheBenchTest: ReadARM GCC 4.6.3ARM LLVM-Clang 3.0400800120016002000SE +/- 15.87, N = 3SE +/- 2.26, N = 31676.59273.841. (CC) gcc options: -lrt
OpenBenchmarking.orgMB/s, More Is BetterCacheBenchTest: ReadARM GCC 4.6.3ARM LLVM-Clang 3.030060090012001500Min: 1651.49 / Avg: 1676.59 / Max: 1705.97Min: 269.32 / Avg: 273.84 / Max: 276.251. (CC) gcc options: -lrt

OpenBenchmarking.orgMB/s, More Is BetterCacheBenchTest: WriteARM GCC 4.6.3ARM LLVM-Clang 3.06001200180024003000SE +/- 47.53, N = 3SE +/- 40.45, N = 32397.412987.021. (CC) gcc options: -lrt
OpenBenchmarking.orgMB/s, More Is BetterCacheBenchTest: WriteARM GCC 4.6.3ARM LLVM-Clang 3.05001000150020002500Min: 2302.37 / Avg: 2397.41 / Max: 2446.87Min: 2934.03 / Avg: 2987.02 / Max: 3066.451. (CC) gcc options: -lrt

OpenBenchmarking.orgMB/s, More Is BetterCacheBenchTest: Read / Modify / WriteARM GCC 4.6.3ARM LLVM-Clang 3.05001000150020002500SE +/- 57.26, N = 6SE +/- 2.61, N = 32376.22416.291. (CC) gcc options: -lrt
OpenBenchmarking.orgMB/s, More Is BetterCacheBenchTest: Read / Modify / WriteARM GCC 4.6.3ARM LLVM-Clang 3.0400800120016002000Min: 2146.19 / Avg: 2376.22 / Max: 2551.64Min: 411.07 / Avg: 416.29 / Max: 419.081. (CC) gcc options: -lrt

SciMark

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: CompositeARM GCC 4.6.3ARM LLVM-Clang 3.020406080100SE +/- 0.25, N = 4SE +/- 0.05, N = 4101.9715.36
OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: CompositeARM GCC 4.6.3ARM LLVM-Clang 3.020406080100Min: 101.53 / Avg: 101.97 / Max: 102.69Min: 15.3 / Avg: 15.36 / Max: 15.51

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Monte CarloARM GCC 4.6.3ARM LLVM-Clang 3.020406080100SE +/- 0.14, N = 4SE +/- 0.02, N = 476.8111.31
OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Monte CarloARM GCC 4.6.3ARM LLVM-Clang 3.01530456075Min: 76.48 / Avg: 76.81 / Max: 77.14Min: 11.26 / Avg: 11.31 / Max: 11.37

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Fast Fourier TransformARM GCC 4.6.3ARM LLVM-Clang 3.048121620SE +/- 0.26, N = 4SE +/- 0.05, N = 415.675.12
OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Fast Fourier TransformARM GCC 4.6.3ARM LLVM-Clang 3.048121620Min: 15.32 / Avg: 15.67 / Max: 16.45Min: 5.03 / Avg: 5.12 / Max: 5.25

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Sparse Matrix MultiplyARM GCC 4.6.3ARM LLVM-Clang 3.020406080100SE +/- 1.11, N = 4SE +/- 0.09, N = 4104.7419.09
OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Sparse Matrix MultiplyARM GCC 4.6.3ARM LLVM-Clang 3.020406080100Min: 103.23 / Avg: 104.74 / Max: 108.02Min: 18.93 / Avg: 19.09 / Max: 19.34

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Dense LU Matrix FactorizationARM GCC 4.6.3ARM LLVM-Clang 3.020406080100SE +/- 0.15, N = 4SE +/- 0.04, N = 4107.8316.45
OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Dense LU Matrix FactorizationARM GCC 4.6.3ARM LLVM-Clang 3.020406080100Min: 107.53 / Avg: 107.83 / Max: 108.23Min: 16.38 / Avg: 16.45 / Max: 16.58

OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Jacobi Successive Over-RelaxationARM GCC 4.6.3ARM LLVM-Clang 3.04080120160200SE +/- 0.34, N = 4SE +/- 0.09, N = 4204.8124.83
OpenBenchmarking.orgMflops, More Is BetterSciMark 2.0Computational Test: Jacobi Successive Over-RelaxationARM GCC 4.6.3ARM LLVM-Clang 3.04080120160200Min: 203.85 / Avg: 204.81 / Max: 205.49Min: 24.57 / Avg: 24.83 / Max: 25.02

TSCP

OpenBenchmarking.orgNodes Per Second, More Is BetterTSCP 1.81AI Chess PerformanceARM GCC 4.6.3ARM LLVM-Clang 3.016K32K48K64K80KSE +/- 72.20, N = 5SE +/- 56.82, N = 57534663969
OpenBenchmarking.orgNodes Per Second, More Is BetterTSCP 1.81AI Chess PerformanceARM GCC 4.6.3ARM LLVM-Clang 3.013K26K39K52K65KMin: 75109 / Avg: 75345.6 / Max: 75562Min: 63836 / Avg: 63969.4 / Max: 64148

7-Zip Compression

OpenBenchmarking.orgMIPS, More Is Better7-Zip Compression 9.20.1Compress Speed TestARM GCC 4.6.3ARM LLVM-Clang 3.02004006008001000SE +/- 10.40, N = 3SE +/- 5.84, N = 38598441. (CXX) g++ options: -pipe -lpthread
OpenBenchmarking.orgMIPS, More Is Better7-Zip Compression 9.20.1Compress Speed TestARM GCC 4.6.3ARM LLVM-Clang 3.0150300450600750Min: 841 / Avg: 858.67 / Max: 877Min: 838 / Avg: 844.33 / Max: 8561. (CXX) g++ options: -pipe -lpthread

N-Queens

OpenBenchmarking.orgSeconds, Fewer Is BetterN-Queens 1.0Elapsed TimeARM GCC 4.6.3ARM LLVM-Clang 3.02004006008001000SE +/- 0.99, N = 2SE +/- 0.35, N = 2821.79705.091. (CC) gcc options: -static -O2
OpenBenchmarking.orgSeconds, Fewer Is BetterN-Queens 1.0Elapsed TimeARM GCC 4.6.3ARM LLVM-Clang 3.0140280420560700Min: 820.8 / Avg: 821.79 / Max: 822.77Min: 704.74 / Avg: 705.09 / Max: 705.441. (CC) gcc options: -static -O2

OpenSSL

OpenBenchmarking.orgSigns Per Second, More Is BetterOpenSSL 1.0.0eRSA 4096-bit PerformanceARM GCC 4.6.3ARM LLVM-Clang 3.01.0352.073.1054.145.175SE +/- 0.00, N = 4SE +/- 0.00, N = 44.604.601. (CC) gcc options: -O3 -lssl -lcrypto -ldl
OpenBenchmarking.orgSigns Per Second, More Is BetterOpenSSL 1.0.0eRSA 4096-bit PerformanceARM GCC 4.6.3ARM LLVM-Clang 3.0246810Min: 4.6 / Avg: 4.6 / Max: 4.6Min: 4.6 / Avg: 4.6 / Max: 4.61. (CC) gcc options: -O3 -lssl -lcrypto -ldl

VP8 libvpx Encoding

OpenBenchmarking.orgFrames Per Second, More Is BetterVP8 libvpx Encoding 0.9.7-p1vpxencARM GCC 4.6.30.22730.45460.68190.90921.1365SE +/- 0.00, N = 31.011. (CC) gcc options: -lvpx -lm -lpthread

x264

OpenBenchmarking.orgFrames Per Second, More Is Betterx264 2011-12-06H.264 Video EncodingARM GCC 4.6.30.90681.81362.72043.62724.534SE +/- 0.02, N = 34.03

C-Ray

This is a test of C-Ray, a simple raytracer designed to test the floating-point CPU performance. This test is multi-threaded (16 threads per core), will shoot 8 rays per pixel for anti-aliasing, and will generate a 1600 x 1200 image. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total TimeARM GCC 4.6.3ARM LLVM-Clang 3.012002400360048006000SE +/- 6.39, N = 3SE +/- 63.86, N = 31170.775452.071. (CC) gcc options: -lm -lpthread -O3 -march=native
OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total TimeARM GCC 4.6.3ARM LLVM-Clang 3.09001800270036004500Min: 1158.15 / Avg: 1170.77 / Max: 1178.81Min: 5337.61 / Avg: 5452.07 / Max: 5558.391. (CC) gcc options: -lm -lpthread -O3 -march=native

Smallpt

Smallpt is a C++ global illumination renderer written in less than 100 lines of code. Global illumination is done via unbiased Monte Carlo path tracing and there is multi-threading support via the OpenMP library. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterSmallpt 1.0Global Illumination Renderer; 100 SamplesARM GCC 4.6.3130260390520650SE +/- 0.33, N = 35911. (CXX) g++ options: -fopenmp -O3 -march=native