The Basic Linear Algebra Subprograms are a standard set of interfaces for low-level vector and matrix operations commonly used in scientific computing.
A reference implementation is available at NetLib; optimized implementations are also available for all high-performance computing architectures, for example:
The BLAS routines are divided into three levels:
- Level 1: vector operations e.g. vector addition, dot product
- Level 2: matrix-vector operations e.g. matrix-vector multiplication
- Level 3: matrix-matrix operations e.g. matrix multiplication