- Software Stack
The ARM Performance Libraries are an ARM implementation of standard core math libraries for HPC applications. In this specific case, the following routines are implemented:
These libraries are also optimized for different ARMv8 platforms like:
Note also that different interfaces (C and Fortran) as well as different versions (serial and OpenMP) are provided with the ARM Performance Libraries.
More information about can be found at the official website.
On the clusters were the ARM Performance Libraries are available, they can be linked with your application in order to provide implementations of BLAS, LAPACK and FFT routines.
For BLAS and LAPACK, no changes on your source code is needed except for the fact that you should include the correct headers, e.g. in C:
Long story short, these are the libraries you can link with:
NOTE1: For the parallel versions, you need to compile your application with the -fopenmp flag. At execution time, the number of threads used for the routines must be set with OMP_NUM_THREADS variable.
NOTE2: For the double precision versions, you need to compile your application with the -DINTEGER=64 or -fdefault-integer-8 flags depending if your code is written in C or Fortran respectively.