Cortex A53 vs Cortex A5

ARMv7 codegen options comparison

HTML result view exported from: https://openbenchmarking.org/result/1701204-TA-1701179TA92&grs&sro.

Cortex A53 vs Cortex A5ProcessorMotherboardMemoryDiskOSKernelCompilerFile-SystemScreen ResolutionDisplay ServerA53 vectorize, pre-patchthunderx/vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A53Cortex-A53 vectorizeCortex-A5 VFPV4Cortex-A5 NeonCortex-A5 NEON-vfpv4GCC 4.9 NEON-vfpv4GCC 4.9 VFPv4AArch64 rev 4 @ 1.50GHz (4 Cores)Amlogic2048MB32GB 00000 + 16GB NCardUbuntu 16.043.14.29 (aarch64)GCC 7.0.0 20170110 + Clang 3.8.0-2ubuntu4 + LLVM 3.8.0ext41920x3240AArch64 rev 4 @ 1.55GHz (4 Cores)GCC 7.0.0 20170113 + Clang 3.8.0-2ubuntu4 + LLVM 3.8.0ARMv7 rev 1 @ 1.73GHz (4 Cores)ODROIDC916MB64GB 00000Ubuntu 14.043.10.96-149 (armv7l)X Server 1.15.1GCC 7.0.0 20170114 + Clang 3.6.0-2ubuntu1~trusty1 + LLVM 3.6.01280x1024GCC 4.9.4 + Clang 3.6.0-2ubuntu1~trusty1 + LLVM 3.6.0OpenBenchmarking.orgCompiler Details- A53 vectorize, pre-patch: --build=aarch64-linux-gnu --disable-browser-plugin --disable-libquadmath --disable-werror --enable-checking=release --enable-clocale=gnu --enable-fix-cortex-a53-843419 --enable-gnu-unique-object --enable-languages=c,c++,fortran --enable-libstdcxx-time=yes --enable-multiarch --enable-nls --enable-plugin --enable-shared --enable-threads=posix --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-arch-directory=aarch64 --with-default-libstdcxx-abi=new - thunderx/vectorize, pre-patch: --build=aarch64-linux-gnu --disable-browser-plugin --disable-libquadmath --disable-werror --enable-checking=release --enable-clocale=gnu --enable-fix-cortex-a53-843419 --enable-gnu-unique-object --enable-languages=c,c++,fortran --enable-libstdcxx-time=yes --enable-multiarch --enable-nls --enable-plugin --enable-shared --enable-threads=posix --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-arch-directory=aarch64 --with-default-libstdcxx-abi=new - A53 vectorize/LTO, pre patch: --build=aarch64-linux-gnu --disable-browser-plugin --disable-libquadmath --disable-werror --enable-checking=release --enable-clocale=gnu --enable-fix-cortex-a53-843419 --enable-gnu-unique-object --enable-languages=c,c++,fortran --enable-libstdcxx-time=yes --enable-multiarch --enable-nls --enable-plugin --enable-shared --enable-threads=posix --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-arch-directory=aarch64 --with-default-libstdcxx-abi=new - Cortex-A53: --build=aarch64-linux-gnu --disable-browser-plugin --disable-libquadmath --disable-werror --enable-checking=release --enable-clocale=gnu --enable-fix-cortex-a53-843419 --enable-gnu-unique-object --enable-languages=c,c++,fortran --enable-libstdcxx-time=yes --enable-multiarch --enable-nls --enable-plugin --enable-shared --enable-threads=posix --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-arch-directory=aarch64 --with-default-libstdcxx-abi=new - Cortex-A53 vectorize: --build=aarch64-linux-gnu --disable-browser-plugin --disable-libquadmath --disable-werror --enable-checking=release --enable-clocale=gnu --enable-fix-cortex-a53-843419 --enable-gnu-unique-object --enable-languages=c,c++,fortran --enable-libstdcxx-time=yes --enable-multiarch --enable-nls --enable-plugin --enable-shared --enable-threads=posix --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-arch-directory=aarch64 --with-default-libstdcxx-abi=new - Cortex-A5 VFPV4: --build=arm-linux-gnueabihf --disable-browser-plugin --disable-libitm --disable-libquadmath --disable-sjlj-exceptions --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-languages=c,c++,fortran --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-multilib --enable-nls --enable-plugin --enable-shared --enable-threads=posix --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf --with-arch-directory=arm --with-arch=armv7-a --with-default-libstdcxx-abi=gcc4-compatible --with-float=hard --with-fpu=vfpv3 --with-mode=arm -v - Cortex-A5 Neon: --build=arm-linux-gnueabihf --disable-browser-plugin --disable-libitm --disable-libquadmath --disable-sjlj-exceptions --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-languages=c,c++,fortran --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-multilib --enable-nls --enable-plugin --enable-shared --enable-threads=posix --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf --with-arch-directory=arm --with-arch=armv7-a --with-default-libstdcxx-abi=gcc4-compatible --with-float=hard --with-fpu=vfpv3 --with-mode=arm -v - Cortex-A5 NEON-vfpv4: --build=arm-linux-gnueabihf --disable-browser-plugin --disable-libitm --disable-libquadmath --disable-sjlj-exceptions --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-languages=c,c++,fortran --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-multilib --enable-nls --enable-plugin --enable-shared --enable-threads=posix --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf --with-arch-directory=arm --with-arch=armv7-a --with-default-libstdcxx-abi=gcc4-compatible --with-float=hard --with-fpu=vfpv3 --with-mode=arm -v - GCC 4.9 NEON-vfpv4: --build=arm-linux-gnueabihf --disable-browser-plugin --disable-libitm --disable-libquadmath --disable-sjlj-exceptions --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-multilib --enable-nls --enable-objc-gc --enable-plugin --enable-shared --enable-threads=posix --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf --with-arch-directory=arm --with-arch=armv7-a --with-float=hard --with-fpu=vfpv3-d16 --with-mode=thumb -v - GCC 4.9 VFPv4: --build=arm-linux-gnueabihf --disable-browser-plugin --disable-libitm --disable-libquadmath --disable-sjlj-exceptions --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-multilib --enable-nls --enable-objc-gc --enable-plugin --enable-shared --enable-threads=posix --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf --with-arch-directory=arm --with-arch=armv7-a --with-float=hard --with-fpu=vfpv3-d16 --with-mode=thumb -v Disk Details- A53 vectorize, pre-patch: CFQ / commit=30,errors=remount-ro,noatime,nodiratime,rw- thunderx/vectorize, pre-patch: CFQ / commit=30,errors=remount-ro,noatime,nodiratime,rw- A53 vectorize/LTO, pre patch: CFQ / commit=30,errors=remount-ro,noatime,nodiratime,rw- Cortex-A53: CFQ / commit=30,errors=remount-ro,noatime,nodiratime,rw- Cortex-A53 vectorize: CFQ / commit=30,errors=remount-ro,noatime,nodiratime,rw- Cortex-A5 VFPV4: CFQ / commit=25,errors=remount-ro,noatime,nodiratime,rw- Cortex-A5 Neon: CFQ / commit=25,errors=remount-ro,noatime,nodiratime,rw- Cortex-A5 NEON-vfpv4: CFQ / commit=25,errors=remount-ro,noatime,nodiratime,rw- GCC 4.9 NEON-vfpv4: CFQ / commit=25,errors=remount-ro,noatime,nodiratime,rw- GCC 4.9 VFPv4: CFQ / commit=25,errors=remount-ro,noatime,nodiratime,rwProcessor Details- A53 vectorize, pre-patch: Scaling Governor: meson_cpufreq performance- thunderx/vectorize, pre-patch: Scaling Governor: meson_cpufreq performance- A53 vectorize/LTO, pre patch: Scaling Governor: meson_cpufreq performance- Cortex-A53: Scaling Governor: meson_cpufreq performance- Cortex-A53 vectorize: Scaling Governor: meson_cpufreq interactive- Cortex-A5 VFPV4: Scaling Governor: meson_cpufreq performance- Cortex-A5 Neon: Scaling Governor: meson_cpufreq performance- Cortex-A5 NEON-vfpv4: Scaling Governor: meson_cpufreq performance- GCC 4.9 NEON-vfpv4: Scaling Governor: meson_cpufreq performance- GCC 4.9 VFPv4: Scaling Governor: meson_cpufreq performance

Cortex A53 vs Cortex A5ramspeed: Copy - Floating Pointramspeed: Copy - Integertachyon: Total Timefhourstones: Complex Connect-4 Solvinggmpbench: Total Timepostmark: Disk Transaction Performancec-ray: Total Timeredis: GETprimesieve: 1e12 Prime Number Generationsmallpt: Global Illumination Renderer; 100 Samplessudokut: Total Timefftw: Stock - 2D FFT Size 2048ttsiod-renderer: Phong Rendering With Soft-Shadow Mappingmafft: Multiple Sequence Alignmentopenssl: RSA 4096-bit PerformanceA53 vectorize, pre-patchthunderx/vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A53Cortex-A53 vectorizeCortex-A5 VFPV4Cortex-A5 NeonCortex-A5 NEON-vfpv4GCC 4.9 NEON-vfpv4GCC 4.9 VFPv44580.394581.3269.273212.10552.841363187.97310344.73543.16167101.95196.9023.1635.4221.502817.452821.4371.413210.20554.831351149.82318926.02566.21167102.75190.6323.0134.4621.504825.134829.9167.643213.77554.371378184.81311785.02540.95168101.75180.5323.7733.1621.504964.664965.0669.403209.67552.561381186.69309030.64553.13168101.88186.2123.4733.0621.504965.604955.9769.343205.40555.101378186.61313438.91573.13167102.17184.8123.4932.1721.501365.271476.43107.331211.33221.56725273.18174917.94836.59306167.97135.0716.9143.7420.231049.661262.11247.961246.77221.63717235.23177754.081021.13289165.14128.7515.7545.2120.301369.051482.21108.331228.77221.48744244.62179240.551029.57291167.41132.5015.7746.1220.301302.021466.11109.851186.23221.04692265.13171955.12894.65287169.11127.2215.7841.6820.331114.651567.32109.811046.73221.70720290.51165811.52948.93306170.29134.4416.4731.5920.30OpenBenchmarking.org

RAMspeed SMP

Type: Copy - Benchmark: Floating Point

OpenBenchmarking.orgMB/s, More Is BetterRAMspeed SMP 3.5.0Type: Copy - Benchmark: Floating PointA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch110022003300440055004580.394825.131369.051049.661365.274964.664965.601302.021114.652817.45

RAMspeed SMP

Type: Copy - Benchmark: Integer

OpenBenchmarking.orgMB/s, More Is BetterRAMspeed SMP 3.5.0Type: Copy - Benchmark: IntegerA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch110022003300440055004581.324829.911482.211262.111476.434965.064955.971466.111567.322821.43

Tachyon

Total Time

OpenBenchmarking.orgSeconds, Fewer Is BetterTachyon 0.98.9Total TimeA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch50100150200250SE +/- 0.08, N = 3SE +/- 0.11, N = 3SE +/- 0.10, N = 3SE +/- 0.35, N = 3SE +/- 0.62, N = 3SE +/- 0.12, N = 3SE +/- 0.10, N = 3SE +/- 0.18, N = 3SE +/- 0.21, N = 3SE +/- 0.06, N = 369.2767.64108.33247.96107.3369.4069.34109.85109.8171.41

Fhourstones

Complex Connect-4 Solving

OpenBenchmarking.orgKpos / sec, More Is BetterFhourstones 3.1Complex Connect-4 SolvingA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch7001400210028003500SE +/- 0.35, N = 3SE +/- 0.22, N = 3SE +/- 18.53, N = 3SE +/- 0.22, N = 3SE +/- 17.08, N = 3SE +/- 1.47, N = 3SE +/- 1.81, N = 3SE +/- 1.73, N = 3SE +/- 0.49, N = 3SE +/- 0.76, N = 33212.103213.771228.771246.771211.333209.673205.401186.231046.733210.201. (CC) gcc options: -O3

GMPbench

Total Time

OpenBenchmarking.orgGMPbench Score, More Is BetterGMPbench 0.2Total TimeA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch120240360480600552.84554.37221.48221.63221.56552.56555.10221.04221.70554.83-Ofast -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize-O3 -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize -flto -ffat-lto-objects-mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-mcpu=cortex-a5 -Ofast -marm -mfpu=neon -ftree-vectorize-mcpu=cortex-a5 -O3 -marm -mfpu=vfpv4-Ofast -mcpu=cortex-a53 -march=armv8-a+crc-Ofast -mtune=cortex-a53 -march=armv8-a+crc -ftree-vectorize-mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-mcpu=cortex-a5 -O3 -marm -mfpu=vfpv4-Ofast -mcpu=thunderx -march=armv8-a+crc -ftree-vectorize1. (CC) gcc options: -fomit-frame-pointer -fipa-pta -lm

PostMark

Disk Transaction Performance

OpenBenchmarking.orgTPS, More Is BetterPostMark 1.51Disk Transaction PerformanceA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch30060090012001500SE +/- 2.67, N = 3SE +/- 2.67, N = 3SE +/- 1.67, N = 3SE +/- 10.35, N = 3SE +/- 11.49, N = 6SE +/- 4.33, N = 3SE +/- 5.00, N = 3SE +/- 10.49, N = 3SE +/- 9.40, N = 6SE +/- 0.00, N = 3136313787447177251381137869272013511. (CC) gcc options: -O3

C-Ray

Total Time

OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total TimeA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch60120180240300SE +/- 0.69, N = 3SE +/- 0.17, N = 3SE +/- 0.13, N = 3SE +/- 0.29, N = 3SE +/- 0.14, N = 3SE +/- 0.14, N = 3SE +/- 0.12, N = 3SE +/- 0.04, N = 3SE +/- 0.13, N = 3SE +/- 1.37, N = 3187.97184.81244.62235.23273.18186.69186.61265.13290.51149.82-Ofast -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize-mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize -flto -ffat-lto-objects-mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-mcpu=cortex-a5 -Ofast -marm -mfpu=neon -ftree-vectorize-mcpu=cortex-a5 -marm -mfpu=vfpv4-Ofast -mcpu=cortex-a53 -march=armv8-a+crc-Ofast -mtune=cortex-a53 -march=armv8-a+crc -ftree-vectorize-mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-mcpu=cortex-a5 -marm -mfpu=vfpv4-Ofast -mcpu=thunderx -march=armv8-a+crc -ftree-vectorize1. (CC) gcc options: -lm -lpthread -O3 -fomit-frame-pointer -fipa-pta

Redis

Test: GET

OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: GETA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch70K140K210K280K350KSE +/- 4662.92, N = 6SE +/- 2239.53, N = 3SE +/- 1282.01, N = 3SE +/- 2106.27, N = 3SE +/- 3419.06, N = 3SE +/- 1052.91, N = 3SE +/- 1967.34, N = 3SE +/- 2381.85, N = 6SE +/- 2848.52, N = 6SE +/- 2784.59, N = 3310344.73311785.02179240.55177754.08174917.94309030.64313438.91171955.12165811.52318926.02-O2 -Ofast -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize-O2 -O3 -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize -flto -ffat-lto-objects-O2 -mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-O2 -mcpu=cortex-a5 -Ofast -marm -mfpu=neon -ftree-vectorize-std=gnu99 -pipe -g3 -O3 -funroll-loops -mcpu=cortex-a5 -marm -mfpu=vfpv4-O2 -Ofast -mcpu=cortex-a53 -march=armv8-a+crc-O2 -Ofast -mtune=cortex-a53 -march=armv8-a+crc -ftree-vectorize-O2 -mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-O2 -mcpu=cortex-a5 -O3 -marm -mfpu=vfpv4-O2 -Ofast -mcpu=thunderx -march=armv8-a+crc -ftree-vectorize1. (CC) gcc options: -ggdb -rdynamic -lm -pthread -ldl -fomit-frame-pointer -fipa-pta

Primesieve

1e12 Prime Number Generation

OpenBenchmarking.orgSeconds, Fewer Is BetterPrimesieve 5.4.21e12 Prime Number GenerationA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch2004006008001000SE +/- 3.01, N = 3SE +/- 8.42, N = 3SE +/- 31.67, N = 6SE +/- 11.32, N = 3SE +/- 6.29, N = 3SE +/- 9.14, N = 3SE +/- 6.92, N = 3SE +/- 14.88, N = 3SE +/- 9.13, N = 3SE +/- 2.99, N = 3543.16540.951029.571021.13836.59553.13573.13894.65948.93566.21-Ofast -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize-O3 -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize -flto -ffat-lto-objects-mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-mcpu=cortex-a5 -Ofast -marm -mfpu=neon -ftree-vectorize-mcpu=cortex-a5 -O3 -marm -mfpu=vfpv4-Ofast -mcpu=cortex-a53 -march=armv8-a+crc-Ofast -mtune=cortex-a53 -march=armv8-a+crc -ftree-vectorize-mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-mcpu=cortex-a5 -O3 -marm -mfpu=vfpv4-Ofast -mcpu=thunderx -march=armv8-a+crc -ftree-vectorize1. (CXX) g++ options: -fomit-frame-pointer -fipa-pta -fopenmp

Smallpt

Global Illumination Renderer; 100 Samples

OpenBenchmarking.orgSeconds, Fewer Is BetterSmallpt 1.0Global Illumination Renderer; 100 SamplesA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch70140210280350SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 1.86, N = 3SE +/- 0.33, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 1.53, N = 3SE +/- 1.00, N = 3SE +/- 0.00, N = 3167168291289306168167287306167-Ofast -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize-O3 -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize -flto -ffat-lto-objects-mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-mcpu=cortex-a5 -Ofast -marm -mfpu=neon -ftree-vectorize-mcpu=cortex-a5 -O3 -marm -mfpu=vfpv4-Ofast -mcpu=cortex-a53 -march=armv8-a+crc-Ofast -mtune=cortex-a53 -march=armv8-a+crc -ftree-vectorize-mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-mcpu=cortex-a5 -O3 -marm -mfpu=vfpv4-Ofast -mcpu=thunderx -march=armv8-a+crc -ftree-vectorize1. (CXX) g++ options: -fopenmp -fomit-frame-pointer -fipa-pta

Sudokut

Total Time

OpenBenchmarking.orgSeconds, Fewer Is BetterSudokut 0.4Total TimeA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch4080120160200SE +/- 0.20, N = 3SE +/- 0.21, N = 3SE +/- 2.25, N = 6SE +/- 0.34, N = 3SE +/- 2.21, N = 6SE +/- 0.10, N = 3SE +/- 0.09, N = 3SE +/- 2.79, N = 6SE +/- 2.80, N = 6SE +/- 0.76, N = 3101.95101.75167.41165.14167.97101.88102.17169.11170.29102.75

FFTW

Build: Stock - Size: 2D FFT Size 2048

OpenBenchmarking.orgMflops, More Is BetterFFTW 3.3.4Build: Stock - Size: 2D FFT Size 2048A53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch4080120160200SE +/- 0.99, N = 5SE +/- 0.49, N = 5SE +/- 0.04, N = 5SE +/- 0.03, N = 5SE +/- 1.16, N = 5SE +/- 0.08, N = 5SE +/- 0.21, N = 5SE +/- 0.07, N = 5SE +/- 0.08, N = 5SE +/- 1.10, N = 5196.90180.53132.50128.75135.07186.21184.81127.22134.44190.63-Ofast -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize-O3 -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize -flto -ffat-lto-objects-mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-mcpu=cortex-a5 -Ofast -marm -mfpu=neon -ftree-vectorize-mcpu=cortex-a5 -O3 -marm -mfpu=vfpv4-Ofast -mcpu=cortex-a53 -march=armv8-a+crc-Ofast -mtune=cortex-a53 -march=armv8-a+crc -ftree-vectorize-std=gnu99 -mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-std=gnu99 -mcpu=cortex-a5 -O3 -marm -mfpu=vfpv4-Ofast -mcpu=thunderx -march=armv8-a+crc -ftree-vectorize1. (CC) gcc options: -fomit-frame-pointer -fipa-pta -lm

TTSIOD 3D Renderer

Phong Rendering With Soft-Shadow Mapping

OpenBenchmarking.orgFPS, More Is BetterTTSIOD 3D Renderer 2.3aPhong Rendering With Soft-Shadow MappingA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch612182430SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.05, N = 3SE +/- 0.04, N = 3SE +/- 0.00, N = 2SE +/- 0.02, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 323.1623.7715.7715.7516.9123.4723.4915.7816.4723.01-Ofast -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize-O3 -mcpu=cortex-a53 -march=armv8-a+crc -ftree-vectorize -ffat-lto-objects-mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-mcpu=cortex-a5 -Ofast -marm -mfpu=neon -ftree-vectorize-mcpu=cortex-a5 -O3 -marm -mfpu=vfpv4-Ofast -mcpu=cortex-a53 -march=armv8-a+crc-Ofast -mtune=cortex-a53 -march=armv8-a+crc -ftree-vectorize-mcpu=cortex-a5 -Ofast -marm -mfpu=neon-vfpv4 -ftree-vectorize-mcpu=cortex-a5 -O3 -marm -mfpu=vfpv4-Ofast -mcpu=thunderx -march=armv8-a+crc -ftree-vectorize1. (CXX) g++ options: -fomit-frame-pointer -fipa-pta -ffast-math -mtune=native -flto -lSDL -lstdc++

Timed MAFFT Alignment

Multiple Sequence Alignment

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed MAFFT Alignment 6.864Multiple Sequence AlignmentA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch1020304050SE +/- 0.80, N = 6SE +/- 0.70, N = 6SE +/- 0.16, N = 3SE +/- 1.09, N = 6SE +/- 1.04, N = 6SE +/- 0.71, N = 6SE +/- 0.01, N = 3SE +/- 3.47, N = 6SE +/- 3.83, N = 6SE +/- 0.73, N = 635.4233.1646.1245.2143.7433.0632.1741.6831.5934.461. (CC) gcc options: -O3 -lm -lpthread

OpenSSL

RSA 4096-bit Performance

OpenBenchmarking.orgSigns Per Second, More Is BetterOpenSSL 1.0.1gRSA 4096-bit PerformanceA53 vectorize, pre-patchA53 vectorize/LTO, pre patchCortex-A5 NEON-vfpv4Cortex-A5 NeonCortex-A5 VFPV4Cortex-A53Cortex-A53 vectorizeGCC 4.9 NEON-vfpv4GCC 4.9 VFPv4thunderx/vectorize, pre-patch510152025SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.07, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.03, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 321.5021.5020.3020.3020.2321.5021.5020.3320.3021.50-fomit-frame-pointer-fomit-frame-pointer-march=armv7-a-march=armv7-a-march=armv7-a-fomit-frame-pointer-fomit-frame-pointer-march=armv7-a-march=armv7-a-fomit-frame-pointer1. (CC) gcc options: -O3 -lssl -lcrypto -ldl


Phoronix Test Suite v10.8.4