MAGMA  2.3.0 Matrix Algebra for GPU and Multicore Architectures
Level 2: matrix-vector operations, O(n^2) work

Matrix operations that perform $$O(n^2)$$ work on $$O(n^2)$$ data. More...

Modules

geadd: Add matrices
$$B = \alpha A + \beta B$$

gemv: General matrix-vector multiply
$$y = \alpha Ax + \beta y$$

ger: General matrix rank 1 update
$$A = \alpha xy^T + A$$

hemv: Hermitian matrix-vector multiply
$$y = \alpha Ax + \beta y$$

her: Hermitian rank 1 update
$$A = \alpha xx^T + A$$

her2: Hermitian rank 2 update
$$A = \alpha xy^T + \alpha yx^T + A$$

symv: Symmetric matrix-vector multiply
$$y = \alpha Ax + \beta y$$

syr: Symmetric rank 1 update
$$A = \alpha xx^T + A$$

syr2: Symmetric rank 2 update
$$A = \alpha xy^T + \alpha yx^T + A$$

trmv: Triangular matrix-vector multiply
$$x = Ax$$

trsv: Triangular matrix-vector solve
$$x = op(A^{-1})\; b$$

swapblk: Swap several rows

swapdblk: Swap diagonal blocks

symmetrize: Symmetrize matrix
$$\text{upper}(A) = \text{lower}(A)^T$$ or $$\text{lower}(A) = \text{upper}(A)^T$$

transpose: Transpose matrix
$$B = A^T$$ or $$B = A^H$$

lacgv: Conjugate vector
$$x = conj(x)$$

lacpy: Copy matrix
$$B = A$$

lascl: Scale matrix by scalar
$$A = \alpha A$$

lascl_diag: Scale matrix by diagonal
$$A = D A$$

lascl_2x2: Scale matrix by 2-by-2 pivot
$$A = D A$$

laset: Set matrix to constants
$$A_{ij} =$$ diag if $$i=j$$; $$A_{ij} =$$ offdiag otherwise.

laset_band: Set band of matrix to constants
$$A_{ij} =$$ diag if $$i=j$$; $$A_{ij} =$$ offdiag otherwise.

Detailed Description

Matrix 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.