Alongside the open source compilers for porting scientific applications to ARMv8-A, for the first time sits a new commercial solution from ARM, promising regular and targeted updates made specifically for High Performance Computing (HPC) and scientific computing users. For decades, Fortran has been and remains a leading language of choice for HPC and scientific application codes, a primary driver for ARM’s work in delivering high quality Fortran compilers, enabling the progress of scientists seeking to run, and advance applications on 64-bit ARM architecture. The good news: we’re now in the position to announce the availability of a beta release of the ARM Fortran compiler, supporting Fortran 2003 and prior versions.
Our commercial compiler complements the two quality open source solutions available on ARM today, namely GFortran and Flang/LLVM. Featuring PGI's open-source Flang front-end, the ARM Fortran compiler provides users with wide Fortran application coverage and support when porting code to ARMv8-A compatible platforms such as the Cavium ThunderX2 or the Qualcomm Centriq SoC’s. It even offers a future proof solution for those looking ahead as it features full support for the ARM Scalable Vector Extension (SVE).
A comprehensive HPC tools suite for ARM
The beta release of ARM Fortran compiler is another step in demonstrating ARM’s continued investment in the HPC ecosystem, with the goal of providing HPC developers a complete toolchain with best-in-class performance. We announced ARM Performance Libraries at SC15, ARM C/C++ Compiler at SC16, the acquisition of Allinea, and its market leading profiler and debugger tools in Dec ‘16 and continue forward momentum with the ARM Fortran compiler. Over the next few months, we will hone the quality and performance of ARM Fortran compiler and intend to provide a fully supported version by Nov ‘17. At that point, HPC developers will have a comprehensive, commercially supported development tool suite for ARM platforms with ARM C/C++/Fortran compiler for HPC, ARM Performance Libraries (with optimized BLAS, LAPACK and FFT routines), and industry standard Allinea tools - DDT debugger, MAP profiler and Performance Reports.
“The availability of a Fortran compiler, designed specifically for the ARMv8-A architecture, addresses a core requirement for the HPC software development community. This release highlights the commitment from ARM in supporting users in running scientific applications successfully from end to end, taking account of their current and future application needs” said Larry Wikelius, Vice President of the Software Ecosystem and Solutions Group at Cavium, Inc. “Cavium has partnered closely with ARM for support on Cavium’s ThunderX2 product family and congratulates ARM on this key HPC product milestone.”
Building on PGI’s open-source Flang front-end and LLVM
For the past year, ARM has been collaborating with PGI and other partners on the development of an open-source Flang front-end to LLVM.
With PGI open sourcing the Flang front-end in May 2017, we have integrated it with our LLVM code generation backend in our commercial Fortran compiler. For HPC users, this delivers a compiler with wide Fortran application coverage and predictable performance.
ARM Fortran Compiler (Beta) is now available as part of the latest ARM Compiler for HPC Package release. The package also includes ARM C/C++ Compiler and ARM Performance Libraries and is available for leading Linux distributions running on ARMv8-A based hardware.
We expect HPC deployments based on ARM partner hardware by the end of 2017 so it’s not too early to try it. The Fortran compiler Getting Started Guide will help you in your trial with a complete workflow – from installing the tools, compiling a Fortran example with ARM Fortran Compiler and running the binary on an ARM device.