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
Log In