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