- BLAS (Basic Linear Algebra Subprograms)
The Level 1 BLAS perform scalar, vector and vector-vector operations, the Level 2 BLAS perform matrix-vector operations, and the Level 3 BLAS perform matrix-matrix operations Because the BLAS are efficient, portable, and widely available, they are commonly used in the development of high quality linear algebra software, LAPACK for example
- LAPACK — Linear Algebra PACKage
LAPACK routines are written so that as much as possible of the computation is performed by calls to the Basic Linear Algebra Subprograms (BLAS) LAPACK is designed at the outset to exploit the Level 3 BLAS — a set of specifications for Fortran subprograms that do various types of matrix multiplication and the solution of triangular systems with multiple right-hand sides Because of the
- What is the relation between BLAS, LAPACK and ATLAS
BLAS is a collection of low-level matrix and vector arithmetic operations (“multiply a vector by a scalar”, “multiply two matrices and add to a third matrix”, etc ) LAPACK is a collection of higher-level linear algebra operations Things like matrix factorizations (LU, LLt, QR, SVD, Schur, etc) that are used to do things like “find the eigenvalues of a matrix”, or “find the
- Quick Reference Guide to the BLAS - Netlib
For the Level 2 BLAS a set of extended-precision routines with the prefixes ES, ED, EC, EZ may also be available
- How does BLAS get such extreme performance? - Stack Overflow
Only the reference implementation of BLAS is implemented in Fortran However, all these BLAS implementations provide a Fortran interface such that it can be linked against LAPACK (LAPACK gains all its performance from BLAS) Optimized compilers play a minor role in this respect (and for GotoBLAS OpenBLAS the compiler does not matter at all)
- LAPACK: BLAS - Netlib
Detailed Description BLAS are defined by three papers: Basic linear algebra subprograms for {FORTRAN} usage, Lawson et al, 1979 An extended set of {FORTRAN} basic linear algebra subprograms, Dongarra et al, 1988 A set of level 3 basic linear algebra subprograms, Dongarra et al, 1990 Some BLAS-like routines (e g , csymv, crot, csum1, icmax1) exist in LAPACK rather than the classic BLAS
- BLAS - Netlib
for all the Level 3 BLAS of this type prec doublecomplex gams D1b file sblas3time f for timing the Level 3 BLAS prec single file dblas3time f for timing the Level 3 BLAS prec double file cblas3time f for timing the Level 3 BLAS prec complex file zblas3time f for timing the Level 3 BLAS prec doublecomplex file sgemm f for matrix matrix multiply
- Sparse BLAS - Netlib
Sparse BLAS In the spirit of the dense BLAS, work is underway in the BLAS Technical Forum to establish a standard for the sparse BLAS The sparse BLAS interface addresses computational routines for unstructured sparse matrices Sparse BLAS also contains the three levels of operations as in the dense case
|