PLASMA
Parallel Linear Algebra Software for Multicore Architectures
Routines
Here is a list of all modules:
[detail level 1234]
 Initialize/finalize
 PLASMA descriptor
 ▼Utilities
 Map LAPACK <=> PLASMA constants
 ▼Matrix layout conversion
 cm2ccrb: Converts column-major (CM) to tiled (CCRB)
 ccrb2cm: Converts tiled (CCRB) to column-major (CM)
 ▼Linear system solversSolves \( Ax = b \)
 ►General matrices: LUSolves \( Ax = b \) using LU factorization for general matrices
 ►General matrices: least squaresSolves \( Ax \approx b \) where \( A \) is rectangular
 ►Symmetric/Hermitian positive definite: CholeskySolves \( Ax = b \) using Cholesky factorization for SPD/HPD matrices
 ►Symmetric/Hermitian indefiniteSolves \( Ax = b \) using indefinite factorization for symmetric/Hermitian matrices
 ▼Orthogonal/unitary factorizationsFactor \( A \) using \( QR, RQ, QL, LQ \)
 ►QR factorizationFactor \( A = QR \)
 ►RQ factorizationFactor \( A = RQ \)
 ►QL factorizationFactor \( A = QL \)
 ►LQ factorizationFactor \( A = LQ \)
 ▼EigenvaluesSolves \( Ax = \lambda x \)
 ►Non-symmetric eigenvaluesSolves \( Ax = \lambda x \) where \( A \) is general
 ►Symmetric/Hermitian eigenvaluesSolves \( Ax = \lambda x \) where \( A \) is symmetric/Hermitian
 ►Generalized Symmetric/Hermitian eigenvaluesSolves \( Ax = \lambda B x \), \( ABx = \lambda x \), or \( BAx = \lambda x \) where \( A, B \) are symmetric/Hermitian and \( B \) is positive definite
 ▼Singular Value Decomposition (SVD)Factor \( A = U \Sigma V^T \)
 gesvd: SVD using QR iteration
 gesdd: SVD using divide-and-conquer
 gebrd: Bidiagonal reduction
 or/unmbr: Multiplies by Q or P from bidiagonal reduction
 or/ungbr: Generates Q or P from bidiagonal reduction
 Auxiliary routines
 ▼PLASMA BLAS and Auxiliary (parallel)BLAS and Auxiliary functions. Standard BLAS and LAPACK auxiliary routines are grouped by amount of work into Level 1, 2, 3
 ►Level 1: vectors operations, O(n) workVector operations that perform \( O(n) \) work on \( O(n) \) data. These are memory bound, since every operation requires a memory read or write
 ►Level 2: matrix-vector operations, O(n^2) workMatrix operations that perform \( O(n^2) \) work on \( O(n^2) \) data. These are memory bound, since every operation requires a memory read or write
 ►Level 3: matrix-matrix operations, O(n^3) workMatrix-matrix operations that perform \( O(n^3) \) work on \( O(n^2) \) data. These benefit from cache reuse, since many operations can be performed for every read from main memory
 ►Householder reflectors
 ►Precision conversion
 ►Matrix norms
 ▼Core BLAS and Auxiliary (single core)Core BLAS and Auxiliary functions. Standard BLAS and LAPACK auxiliary routines are grouped by amount of work into Level 1, 2, 3
 ►Level 0: element operations, O(1) workOperations on single elements
 ►Level 1: vectors operations, O(n) workVector operations that perform \( O(n) \) work on \( O(n) \) data. These are memory bound, since every operation requires a memory read or write
 ►Level 2: matrix-vector operations, O(n^2) workMatrix operations that perform \( O(n^2) \) work on \( O(n^2) \) data. These are memory bound, since every operation requires a memory read or write
 ►Level 3: matrix-matrix operations, O(n^3) workMatrix-matrix operations that perform \( O(n^3) \) work on \( O(n^2) \) data. These benefit from cache reuse, since many operations can be performed for every read from main memory
 ►Householder reflectors
 ►Precision conversion
 ►Matrix norms
 ►Linear system solvers