Skip to main content
`Ctrl`+`K`

# rocSOLVER API summary

The following tables summarize the functionality implemented for the different supported precisions in rocSOLVER. All LAPACK and LAPACK-like main functions include `_batched` and `_strided_batched` versions. For a complete description of the listed routines, see the corresponding reference guides.

Note

The rocSOLVER library is in the early stages of active development, with new features being continuously added and documented.

## LAPACK auxiliary functions

Vector and matrix manipulations
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_lacgv | x | x | x | x
rocsolver_laswp | x | x | x | x
rocsolver_lauum | x | x | x | x

Householder reflections
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_larfg | x | x | x | x
rocsolver_larf | x | x | x | x
rocsolver_larft | x | x | x | x
rocsolver_larfb | x | x | x | x

Givens (plane) rotations
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_lasr | x | x | x | x

Bidiagonal forms
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_labrd | x | x | x | x
rocsolver_bdsqr | x | x | x | x
rocsolver_bdsvdx | x | x |  |

Tridiagonal forms
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_sterf | x | x |  |
rocsolver_stebz | x | x |  |
rocsolver_latrd | x | x | x | x
rocsolver_steqr | x | x | x | x
rocsolver_stedc | x | x | x | x
rocsolver_stein | x | x | x | x

Symmetric matrices
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_lasyf | x | x | x | x

Orthonormal matrices
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_org2r | x | x |  |
rocsolver_orgqr | x | x |  |
rocsolver_orgl2 | x | x |  |
rocsolver_orglq | x | x |  |
rocsolver_org2l | x | x |  |
rocsolver_orgql | x | x |  |
rocsolver_orgbr | x | x |  |
rocsolver_orgtr | x | x |  |
rocsolver_orm2r | x | x |  |
rocsolver_ormqr | x | x |  |
rocsolver_orml2 | x | x |  |
rocsolver_ormlq | x | x |  |
rocsolver_orm2l | x | x |  |
rocsolver_ormql | x | x |  |
rocsolver_ormbr | x | x |  |
rocsolver_ormtr | x | x |  |

Unitary matrices
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_ung2r |  |  | x | x
rocsolver_ungqr |  |  | x | x
rocsolver_ungl2 |  |  | x | x
rocsolver_unglq |  |  | x | x
rocsolver_ung2l |  |  | x | x
rocsolver_ungql |  |  | x | x
rocsolver_ungbr |  |  | x | x
rocsolver_ungtr |  |  | x | x
rocsolver_unm2r |  |  | x | x
rocsolver_unmqr |  |  | x | x
rocsolver_unml2 |  |  | x | x
rocsolver_unmlq |  |  | x | x
rocsolver_unm2l |  |  | x | x
rocsolver_unmql |  |  | x | x
rocsolver_unmbr |  |  | x | x
rocsolver_unmtr |  |  | x | x

## LAPACK main functions

Triangular factorizations
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_potf2 | x | x | x | x
rocsolver_potrf | x | x | x | x
rocsolver_getf2 | x | x | x | x
rocsolver_getrf | x | x | x | x
rocsolver_sytf2 | x | x | x | x
rocsolver_sytrf | x | x | x | x

Orthogonal factorizations
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_geqr2 | x | x | x | x
rocsolver_geqrf | x | x | x | x
rocsolver_gerq2 | x | x | x | x
rocsolver_gerqf | x | x | x | x
rocsolver_gelq2 | x | x | x | x
rocsolver_gelqf | x | x | x | x
rocsolver_geql2 | x | x | x | x
rocsolver_geqlf | x | x | x | x

Problem and matrix reductions
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_sytd2 | x | x |  |
rocsolver_sytrd | x | x |  |
rocsolver_sygs2 | x | x |  |
rocsolver_sygst | x | x |  |
rocsolver_hetd2 |  |  | x | x
rocsolver_hetrd |  |  | x | x
rocsolver_hegs2 |  |  | x | x
rocsolver_hegst |  |  | x | x
rocsolver_gebd2 | x | x | x | x
rocsolver_gebrd | x | x | x | x

Linear-systems solvers
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_trtri | x | x | x | x
rocsolver_getri | x | x | x | x
rocsolver_getrs | x | x | x | x
rocsolver_gesv | x | x | x | x
rocsolver_potri | x | x | x | x
rocsolver_potrs | x | x | x | x
rocsolver_posv | x | x | x | x

Least-square solvers
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_gels | x | x | x | x

Symmetric eigensolvers
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_syev | x | x |  |
rocsolver_syevd | x | x |  |
rocsolver_syevx | x | x |  |
rocsolver_sygv | x | x |  |
rocsolver_sygvd | x | x |  |
rocsolver_sygvx | x | x |  |
rocsolver_heev |  |  | x | x
rocsolver_heevd |  |  | x | x
rocsolver_heevx |  |  | x | x
rocsolver_hegv |  |  | x | x
rocsolver_hegvd |  |  | x | x
rocsolver_hegvx |  |  | x | x

Singular value decomposition
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_gesvd | x | x | x | x
rocsolver_gesvdx | x | x | x | x

## LAPACK-like functions

Triangular factorizations
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_getf2_npvt | x | x | x | x
rocsolver_getrf_npvt | x | x | x | x
rocsolver_geblttrf_npvt | x | x | x | x

Linear-systems solvers
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_getri_npvt | x | x | x | x
rocsolver_getri_outofplace | x | x | x | x
rocsolver_getri_npvt_outofplace | x | x | x | x
rocsolver_geblttrs_npvt | x | x | x | x

Symmetric eigensolvers
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_syevj | x | x |  |
rocsolver_sygvj | x | x |  |
rocsolver_heevj |  |  | x | x
rocsolver_hegvj |  |  | x | x
rocsolver_syevdj | x | x |  |
rocsolver_sygvdj | x | x |  |
rocsolver_heevdj |  |  | x | x
rocsolver_hegvdj |  |  | x | x
rocsolver_syevdx | x | x |  |
rocsolver_sygvdx | x | x |  |
rocsolver_heevdx |  |  | x | x
rocsolver_hegvdx |  |  | x | x

Singular value decomposition
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_gesvdj | x | x | x | x

## Refactorization and direct solvers

Triangular refactorization
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_csrrf_sumlu | x | x |  |
rocsolver_csrrf_splitlu | x | x |  |
rocsolver_csrrf_refactlu | x | x |  |
rocsolver_csrrf_refactchol | x | x |  |

Direct solvers
Function | single | double | single complex | double complex
--- | --- | --- | --- | ---
rocsolver_csrrf_solve | x | x |  |