About the BLAS (Basic Linear Algebra Subprograms)
LAPACK routines are written so that as much as possible of the computation
is performed by calls to
the Basic Linear Algebra Subprograms (BLAS).
While LINPACK and EISPACK are based on the
vector operation kernels of the Level 1 BLAS,
LAPACK was 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
coarse granularity of the Level 3 BLAS operations,
their use promotes high efficiency on many
high-performance computers, particularly if specially coded
implementations are provided by the
manufacturer.
Highly efficient machine-specific implementations of the BLAS
are available for many modern
high-performance computers. The BLAS enable LAPACK
routines to achieve high performance with
transportable software. Although a model Fortran
implementation of the BLAS in available from
netlib in the BLAS library, it is not expected
to perform as well as a specially tuned implementation
on most high-performance computers -- on some machines
it may give much worse performance --
but it allows users to run LAPACK software on machines that
do not offer any other implementation
of the BLAS.
More information about the BLAS is available at
http://www.netlib.org/blas/faq.html. A list of
vendor optimized BLAS is available at that site. In
addition, the ATLAS system, described at
http://www.netlib.org/atlas/ automatically generates
an optimized BLAS library tuned for your architecture.
The BLAS must be downloaded separately from Netlib at
http://www.netlib.org/blas/
LAPACK FAQ |
Related Projects |
About this Site
|