BLAS stands for Basic Linear Algebra Subprograms, and is a standard for dealing with low-level routines for linear algebra operations. Low-level routines include operations such as vector and matrix addition/multiplication, linear combinations, and so on. BLAS provides three different levels for linear algebra operations:
- BLAS1: Scalar–vector and vector–vector operations
- BLAS2: Matrix–vector operations
- BLAS3: Matrix–matrix operations
LAPACK stands for Linear Algebra Package, and contains higher-level operations. LAPACK provides routines for matrix factorizations—such as LU, Cholesky, and QR—and for solving eigenvalue problems. LAPACK mostly depends on BLAS routines.