===== 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