Arm Compiler for Linux

Arm Compiler for Linux provides the earliest, most complete, and most accurate support for the latest architectural features and extensions of the Armv8-A architecture. Arm Compiler for Linux supports all the latest Neoverse N1-based processors.

Arm Compiler for Linux is a mature toolchain that is tailored to the development of server and High Performance Computing (HPC) applications, and is supported on all leading Linux distributions: RHEL, SLES, and Ubuntu.

Arm Compiler for Linux includes many powerful, performance-enhancing optimization techniques, including low-level microarchitecture-specific instruction scheduling, including support for Scalable Vector Extension (SVE) instructions.

Arm Compiler for Linux is available as part of Arm Allinea Studio, Arm's commercial end-to-end development suite for Arm-based platforms

Components

  1. armclang|armclang++ (Arm C/C++ Compiler):
    1. Is built on modern LLVM and Clang technology
    2. Is tailored for HPC and scientific codes, with support for C/C++ standards, OpenMP standards, and SVE code
    3. Is highly compatible with source code originally written for GCC
    4. Implements specifications including ABI for the 64-bit Arm architecture, Arm C Language Extensions (ACLE), and ACLE for SVE and SVE2.
  2. armflang (Arm Fortran Compiler):
    1. Is built on modern LLVM and Flang technology
    2. Is tailored for HPC and scientific codes, with support for modern Fortran, OpenMP standards, and SVE code
  3. Arm Performance Libraries:
    1. Library routines supported for both Fortran and C/C++ interfaces.
    2. Supported library routines include: BLAS, LAPACK, FFT functions, Sparse linear algebra, and libamath
    3. 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.
    4. A free, GCC-built version of Arm Performance Libraries for Neoverse N1-based platforms is also available. For more information, see Arm Performance Libraries (free version).

Get software

Square with arrow pointing through (Download icon).

Try Arm Compiler for Linux

Get a free 7-day evaluation license for Arm Compiler for Linux in Arm Allinea Studio. You can also download our trials package to use the tools with some example code.

Evaluate

Documentation

Get support

The top half of a human.

Request technical support for Arm Compiler for Linux:

Open a case

Forums

Answered Morello: Frequently Asked Questions (FAQs) 0 votes 167 views 1 replies Latest 6 days ago by Ash Wilding Answer this
Answered Where should I ask my question?
  • ARM Community
0 votes 1318 views 1 replies Latest 1 months ago by Oliver Beirne Answer this
Not answered Where do I find presentations and photos from SC'18? 2 votes 5261 views 0 replies Started 1 years ago by John Linford Answer this
Suggested answer Required to load external flash every time?
  • Keil MDK
0 votes 877 views 1 replies Latest 6 hours ago by kdubov Answer this
Not answered Is it possible to turn my phone's 64-bit armv8-a (32-bit mode) to 64 bit mode 0 votes 25 views 0 replies Started 7 hours ago by durddudunyaa Answer this
Not answered netInitialize strange behavior without osDelay before
  • RTX
  • networking
  • STM32 F4
  • CMSIS RTOS
0 votes 32 views 0 replies Started 8 hours ago by johann.seydoux Answer this
Not answered How to solve: undefined reference to `__sync_synchronize' 0 votes 40 views 0 replies Started 10 hours ago by Rocco Matano Answer this
Suggested answer DS52020.0 connection to Musca-A/B boards not working
  • Arm Development Studio
  • Musca-A
0 votes 175 views 2 replies Latest 10 hours ago by Daniel Oliveira Answer this
Answered Morello: Frequently Asked Questions (FAQs) Latest 6 days ago by Ash Wilding 1 replies 167 views
Answered Where should I ask my question? Latest 1 months ago by Oliver Beirne 1 replies 1318 views
Not answered Where do I find presentations and photos from SC'18? Started 1 years ago by John Linford 0 replies 5261 views
Suggested answer Required to load external flash every time? Latest 6 hours ago by kdubov 1 replies 877 views
Not answered Is it possible to turn my phone's 64-bit armv8-a (32-bit mode) to 64 bit mode Started 7 hours ago by durddudunyaa 0 replies 25 views
Not answered netInitialize strange behavior without osDelay before Started 8 hours ago by johann.seydoux 0 replies 32 views
Not answered How to solve: undefined reference to `__sync_synchronize' Started 10 hours ago by Rocco Matano 0 replies 40 views
Suggested answer DS52020.0 connection to Musca-A/B boards not working Latest 10 hours ago by Daniel Oliveira 2 replies 175 views