Table of Contents
BLAS/LAPACK
BLAS stands for Basic Linear Algebra Subprograms.
This library contains linear algebraic operations that include matrixes and vectors. Its functions are separated into three parts:
- Level 1 routines to represent vectors and vector/vector operations.
- Level 2 routines to represent matrixes and matrix/vector operations.
- Level 3 routines mainly for matrix/matrix operations.
This library is included in the Intel MKL package.
LAPACK
LAPACK stands for Linear Algebra PACKage. This is a set of Fortran 77 routines used to resolve linear algebra problems such as the resolution of linear systems, eigenvalue computations, matrix computations, etc. However, it is not written for a parallel architecture.
This library is included in the Intel MKL package.
BLACS
BLACS stands for Basic Linear Algebra Communication Subprograms. BLACS is a specialized communications library (using message passing). After defining a process chart, it exchanges vectors, matrices and blocks and so on. It can be compiled on top of MPI or PVM systems.
TIPS
Ubuntu
To switch between different installed BLAS/LAPACK implementations (ATLAS/GOTO/Open) or to fix the links in /usr/lib
you can use this:
update-alternatives --config libblas.so.3gf
update-alternatives --config liblapack.so.3gf
Make sure you select for BLAS and LAPACK the same Implementation, don't mix ATLAS and OpenBLAS!
Possible Errors
If you encounter an error like: update-alternatives: error: no alternatives for liblapack.so.3gf
then try first:
update-alternatives --config liblapack.so.3
If you encounter an error like: update-alternatives: error: no alternatives for libblas.so.3gf
then try first:
update-alternatives --config libblas.so.3