BLAS
Guidance last updated: 19 October 2026
The Basic Linear Algebra Subprograms (BLAS) provide standard routines for vector and matrix operations. Level 1 covers vector operations, Level 2 matrix-vector operations, and Level 3 matrix-matrix operations. Libraries such as LAPACK use these routines for numerical linear algebra.
Choosing a library
On Stanage, BLAS routines are provided through the following libraries:
FlexiBLAS provides a wrapper for BLAS and LAPACK, allowing the underlying implementation to be selected. It is used by the
fosstoolchains.OpenBLAS provides optimised BLAS and LAPACK implementations. Its usage page includes a C matrix multiplication example.
Intel MKL provides BLAS and LAPACK implementations used by the
inteltoolchains. Its usage page includes a C example of matrix multiplication and solving a linear system.
Use the library required by your application’s build instructions and choose compatible compiler and library versions from the development toolchains. Follow the linked library guidance for module names, linking options and thread settings.