Arm Performance Libraries

Arm Performance Libraries provides optimized standard core math libraries for high-performance computing applications on Arm processors. This standalone version of the libraries provides optimized libraries for Arm® Neoverse-based Arm AArch64 implementations that are compatible with various versions of GCC. You do not require a license for this version of the libraries.

Note:  Arm Performance Libraries is also available in Arm Compiler for Linux.

The library routines, which are available through both Fortran and C interfaces, include:

  • BLAS - Basic Linear Algebra Subprograms (including XBLAS, the extended precision BLAS).
  • LAPACK 3.11.0 - a comprehensive package of higher level linear algebra routines.
  • FFT functions - a set of Fast Fourier Transform routines for real and complex data using the FFTW interface.
  • Sparse linear algebra.
  • RNG: Functions for generating integer and floating point random numbers.
  • libamath - libamath contains AArch64-optimized versions of the following scalar functions, in both single and double precision: exponential (exp, exp2), logarithm (log, log2, log10), and error functions (erf, erfc). In addition, optimized single precision sine and cosine functions are included (sinf, cosf, sincosf). Linking to libamath ahead of libm will ensure use of these optimized functions.

    libamath also contains vectorized versions (Neon and SVE) of all of the common math.h functions in libm. These functions are used by Arm C/C++ Compiler whenever possible.
  • libastring - libastring provides a set of replacement string.h functions which are optimized for AArch64: bcmp, memchr, memcpy, memmove, memset, strchr, strchrnul, strcmpstrcpy, strlen, strncmp, strnlen. Linking to libastring ahead of libc will ensure use of these optimized functions.

Arm Performance Libraries are built with OpenMP across many BLAS, LAPACK, FFT, and sparse routines in order to maximize your performance in multi-processor environments.

Arm Performance Libraries is supported on all leading Linux distributions: RHEL, SLES, and Ubuntu.

Downloads - Linux

Latest version: 24.04

Use of the standalone version of Arm Performance Libraries is subject to the terms and conditions of the applicable End User License Agreement (“EULA”). A copy of the EULA can be found in the 'license_terms' folder of your product installation.

Linux

When downloading the Arm Performance Libraries, there are now just four links to select from:

  • RPM and deb based installers for GCC users.
  • RPM and deb based installers for NVHPC users.

The GCC compatible releases are built with GCC 13 and tested with GCC versions 7 to 13. The NVHPC compatible releases are built and tested with NVHPC 24.1.

The deb based installers can be used on Ubuntu 20 and Ubuntu 22. The RPM based installers can be used on the following supported distributions:

  • Amazon Linux 2, Amazon Linux 2023
  • RHEL-7, RHEL-8, RHEL-9
  • SLES-15
arm-performance-libraries_24.04_deb_gcc.tar 565.77 MB
arm-performance-libraries_24.04_deb_nvhpc.tar 566.31 MB
arm-performance-libraries_24.04_rpm_gcc.tar 569.01 MB
arm-performance-libraries_24.04_rpm_nvhpc.tar 569.49 MB

Download - Apple macOS

Latest version: 24.04

Download - Windows

Latest version: 24.04

Windows 11

Tested with Microsoft compiler version 19.39

arm-performance-libraries_24.04_Windows.msi 180.05 MB

Install - Linux

To install Arm Performance Libraries:

  1. Extract the downloaded package and change directory into the resulting directory:

    tar -xvf <package_name>.tar
    cd <package_name>

    Replace <package_name> with the full name of the downloaded package.

  2. Run the installation script as a privileged user and pass any options to configure the installation:

    ./arm-performance-libraries_<version>_*.sh <options>
    Where <options> can be one or more of:

    Option
    Description
    -a, --accept Automatically accept the EULA
    (the EULA still displays).
    -l, --list-packages List the installer packages
    -i, --install-to <location> Install to the given directory.
    Use this option if you do not have sudo rights to install to /opt/arm or another central location.
    -s, --save-packages-to <location> Save packages to given directory.
    -f, --force Force an install attempt to a non empty directory.
    -h, --help Display this table in the form of a help message in the terminal.
  3. The installer displays the EULA and prompts you to agree to the terms. Type 'yes' at the prompt to continue.

    The packages are installed to <install_dir>/<package_name>, where <install_dir> defaults to /opt/arm if not explicitly provided using the --install-to option.

Install - Apple macOS

To install Arm Performance Libraries:

  1. Mount the disk image by double clicking the icon of the downloaded package, or by running from a terminal:

    hdiutil attach <package_name>.dmg

    Replace <package_name> with the name of the downloaded package.

  2. Run the installation script as a privileged user and pass any options to configure the installation:

    /Volumes/<package_name>_installer/<package_name>_install.sh <options>
    <options> can be one or more of:

    Option
    Description
    -y Automatically accept the EULA
    (the EULA does not display).
    --install_dir=<location> Install to the given directory.
    Use this option if you do not have required privileges.
    -h Display this table in the form of a help message in the terminal.

  3. The installer displays the EULA and prompts you to agree to the terms. Type 'y' at the prompt to continue.

    The packages are installed to <install_dir>/<package_name>, where <install_dir> defaults to /opt/arm if not explicitly provided using the --install_dir option.

    in case you selected -y and want to read the EULA later, it is available at:
    <install_dir>/arm-performance-libraries_<version>/license_terms/license_agreement.txt

Install - Windows

To install Arm Performance Libraries:

  1. Download and run the Windows Installer

    arm-performance-libraries_<version>_Windows.msi
    • Double click to open this file and start the Arm Performance Libraries Setup Wizard.
    • Read and accept the End User License Agreement.
    • Select a location for the installation on your system. The default is:

      C:\Program Files\Arm Performance Libraries

       

  2. Read the enclosed Release Notes and examples

  3. C:\Program Files\Arm Performance Libraries\RELEASE_NOTES.txt
    C:\Program Files\Arm Performance Libraries\armpl_24.04\examples_*
    • The release notes and examples explain how to link your application to the library in a command terminal.
    • Users wishing to use the Arm Performance Libraries from within MSVC are referred to Microsoft's online documentation.

Documentation