The ScaLAPACK (or Scalable LAPACK) library includes a subset of
LAPACK
LAPACK ("Linear Algebra Package") is a standard software library for numerical linear algebra. It provides routines for solving systems of linear equations and linear least squares, eigenvalue problems, and singular value decomposition. It al ...
routines redesigned for
distributed memory
In computer science, distributed memory refers to a multiprocessor computer system in which each processor has its own private memory. Computational tasks can only operate on local data, and if remote data are required, the computational task m ...
MIMD parallel computer
Parallel computing is a type of computation in which many calculations or processes are carried out simultaneously. Large problems can often be divided into smaller ones, which can then be solved at the same time. There are several different f ...
s. It is currently written in a Single-Program-Multiple-Data style using explicit
message passing
In computer science, message passing is a technique for invoking behavior (i.e., running a program) on a computer. The invoking program sends a message to a process (which may be an actor or object) and relies on that process and its supporti ...
for interprocessor communication. It assumes matrices are laid out in a two-dimensional block cyclic decomposition.
ScaLAPACK is designed for heterogeneous computing and is portable on any computer that supports
MPI
MPI or Mpi may refer to:
Science and technology Biology and medicine
* Magnetic particle imaging, an emerging non-invasive tomographic technique
* Myocardial perfusion imaging, a nuclear medicine procedure that illustrates the function of the hear ...
or
PVM
Parallel Virtual Machine (PVM) is a software tool for parallel networking of computers. It is designed to allow a network of heterogeneous Unix and/or Windows machines to be used as a single distributed parallel processor. Thus large computatio ...
.
ScaLAPACK depends on
PBLAS operations in the same way
LAPACK
LAPACK ("Linear Algebra Package") is a standard software library for numerical linear algebra. It provides routines for solving systems of linear equations and linear least squares, eigenvalue problems, and singular value decomposition. It al ...
depends on
BLAS.
As of version 2.0 the code base directly includes PBLAS and BLACS and has dropped support for PVM.
Examples
*
Programming with Big Data in R fully utilizes ScaLAPACK and two-dimensional block cyclic decomposition for
Big Data statistical analysis which is an extension to
R.
References
External links
The ScaLAPACK Projecton Netlib.org
{{compu-soft-stub
Numerical software