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