ARM64 gfortran performance comparison

Fortran compiler tuning on aarch64

Compare your own system(s) to this result file with the Phoronix Test Suite by running the command: phoronix-test-suite benchmark 1703078-RI-1703071RI00
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:

CPU Massive 2 Tests
Fortran Tests 2 Tests
HPC - High Performance Computing 3 Tests
OpenMPI Tests 2 Tests
Scientific Computing 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
Prefer Vertical Bar Graphs

Additional Graphs

Show Perf Per Clock Calculation Graphs Where Applicable

Table

Show Detailed System Result Table

Run Management

Highlight
Result
Hide
Result
Result
Identifier
Performance Per
Dollar
Date
Run
  Test
  Duration
5.4.0
September 25 2016
 
6.2.1
September 25 2016
 
7.0.0
September 25 2016
 
7.0.0/A53
September 25 2016
 
6.2.1/A53
September 25 2016
 
7.0.1
March 07 2017
 
7.0.1/A57 tuned
March 07 2017
 
Invert Hiding All Results Option
 

Only show results where is faster than
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):


ARM64 gfortran performance comparisonProcessorMemoryDiskMotherboardOSKernelCompilerFile-SystemScreen Resolution5.4.06.2.17.0.07.0.0/A536.2.1/A537.0.17.0.1/A57 tunedUnknown @ 1.50GHz (4 Cores)2048MB16GB NCard + 32GB 00000Ubuntu 16.043.14.65-61 (aarch64)GCC 5.4.0 20160609 + LLVM 3.8.0ext41280x1440GCC 6.2.1 20160901 + LLVM 3.8.0GCC 7.0.0 20160923 + LLVM 3.8.0GCC 6.2.1 20160901 + LLVM 3.8.0Unknown @ 1.54GHz (4 Cores)Amlogic3.14.79-vegas95 (aarch64)GCC 7.0.1 20170306 + Clang 3.8.0-2ubuntu4 + LLVM 3.8.0GCC 7.0.1 20170307 + Clang 3.8.0-2ubuntu4 + LLVM 3.8.0OpenBenchmarking.orgCompiler Details- 5.4.0: --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-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --enable-libstdcxx-debug --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 -v - 6.2.1: --build=aarch64-linux-gnu --disable-bootstrap --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 - 7.0.0: --build=aarch64-linux-gnu --disable-bootstrap --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 - 7.0.0/A53: --build=aarch64-linux-gnu --disable-bootstrap --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 - 6.2.1/A53: --build=aarch64-linux-gnu --disable-bootstrap --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 - 7.0.1: --build=aarch64-linux-gnu --disable-bootstrap --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 - 7.0.1/A57 tuned: --build=aarch64-linux-gnu --disable-bootstrap --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 Processor Details- Scaling Governor: meson_cpufreq performance

5.4.06.2.17.0.07.0.0/A536.2.1/A537.0.17.0.1/A57 tunedResult OverviewPhoronix Test Suite100%109%119%128%DolfynNAS Parallel BenchmarksFFTEC.F.DLU.AN.6.1.C.F.R

NAS Parallel Benchmarks

OpenBenchmarking.orgTotal Mop/s, More Is BetterNAS Parallel Benchmarks 3.3Test / Class: LU.A5.4.06.2.17.0.07.0.0/A536.2.1/A537.0.17.0.1/A57 tuned2004006008001000SE +/- 0.43, N = 3SE +/- 0.37, N = 3SE +/- 0.61, N = 3SE +/- 0.76, N = 3SE +/- 0.95, N = 3SE +/- 2.39, N = 3SE +/- 1.06, N = 3753.88748.24754.35861.02857.04754.51858.70-mcpu=cortex-a53-mcpu=cortex-a53-mcpu=cortex-a53-mtune=cortex-a53-mtune=cortex-a53-Ofast -mcpu=cortex-a57 -ftree-vectorize-mcpu=cortex-a571. (F9X) gfortran options: -O3 -fomit-frame-pointer -fipa-pta -march=armv8-a+crc -march=native -pthread -lmpi_usempif08 -lmpi_mpifh -lmpi 2. Open MPI 1.10.2
OpenBenchmarking.orgTotal Mop/s, More Is BetterNAS Parallel Benchmarks 3.3Test / Class: LU.A5.4.06.2.17.0.07.0.0/A536.2.1/A537.0.17.0.1/A57 tuned150300450600750Min: 753.12 / Avg: 753.88 / Max: 754.61Min: 747.64 / Avg: 748.24 / Max: 748.92Min: 753.46 / Avg: 754.35 / Max: 755.53Min: 859.72 / Avg: 861.02 / Max: 862.34Min: 855.15 / Avg: 857.04 / Max: 858.13Min: 750.08 / Avg: 754.51 / Max: 758.26Min: 856.93 / Avg: 858.7 / Max: 860.581. (F9X) gfortran options: -O3 -fomit-frame-pointer -fipa-pta -march=armv8-a+crc -march=native -pthread -lmpi_usempif08 -lmpi_mpifh -lmpi 2. Open MPI 1.10.2

Dolfyn

OpenBenchmarking.orgSeconds, Fewer Is BetterDolfyn 0.527Computational Fluid Dynamics5.4.06.2.17.0.07.0.0/A536.2.1/A537.0.17.0.1/A57 tuned70140210280350SE +/- 0.36, N = 3SE +/- 0.33, N = 3SE +/- 0.25, N = 3SE +/- 0.12, N = 3SE +/- 0.58, N = 3SE +/- 0.45, N = 3SE +/- 0.42, N = 3272.53345.05268.12268.24269.17268.37250.38-O2-O2 -mcpu=cortex-a531. (F9X) gfortran options:
OpenBenchmarking.orgSeconds, Fewer Is BetterDolfyn 0.527Computational Fluid Dynamics5.4.06.2.17.0.07.0.0/A536.2.1/A537.0.17.0.1/A57 tuned60120180240300Min: 272.01 / Avg: 272.53 / Max: 273.22Min: 344.51 / Avg: 345.05 / Max: 345.66Min: 267.69 / Avg: 268.12 / Max: 268.56Min: 268.1 / Avg: 268.24 / Max: 268.49Min: 268.15 / Avg: 269.17 / Max: 270.16Min: 267.68 / Avg: 268.37 / Max: 269.2Min: 249.61 / Avg: 250.38 / Max: 251.061. (F9X) gfortran options:

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 Routine5.4.06.2.17.0.07.0.0/A536.2.1/A537.0.17.0.1/A57 tuned30060090012001500SE +/- 0.20, N = 3SE +/- 1.23, N = 3SE +/- 0.08, N = 3SE +/- 0.27, N = 3SE +/- 1.85, N = 3SE +/- 1.19, N = 3SE +/- 1.17, N = 31505.701510.711443.321442.951441.561517.951501.561. (F9X) gfortran options: -O3 -fomit-frame-pointer -fopenmp -pthread -lmpi_usempif08 -lmpi_mpifh -lmpi
OpenBenchmarking.orgMFLOPS, More Is BetterFFTE 5.0Test: N=64, 1D Complex FFT Routine5.4.06.2.17.0.07.0.0/A536.2.1/A537.0.17.0.1/A57 tuned30060090012001500Min: 1505.31 / Avg: 1505.7 / Max: 1505.98Min: 1508.99 / Avg: 1510.71 / Max: 1513.08Min: 1443.16 / Avg: 1443.32 / Max: 1443.42Min: 1442.41 / Avg: 1442.95 / Max: 1443.22Min: 1437.86 / Avg: 1441.56 / Max: 1443.4Min: 1516.39 / Avg: 1517.95 / Max: 1520.29Min: 1499.75 / Avg: 1501.56 / Max: 1503.741. (F9X) gfortran options: -O3 -fomit-frame-pointer -fopenmp -pthread -lmpi_usempif08 -lmpi_mpifh -lmpi