Introduction to rocSOLVER API#

Note

The rocSOLVER library is in the early stages of active development. New features are being continuously added, with new functionality documented at each release of the ROCm platform.

Currently implemented functionality#

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

LAPACK auxiliary functions#

Table 1 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

Table 2 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

Table 3 Givens (plane) rotations#

Function

single

double

single complex

double complex

rocsolver_lasr

x

x

x

x

Table 4 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

Table 5 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

Table 6 Symmetric matrices#

Function

single

double

single complex

double complex

rocsolver_lasyf

x

x

x

x

Table 7 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

LAPACK main functions#

Table 9 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

Table 10 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

Table 11 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

Table 12 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

Table 13 Least-square solvers#

Function

single

double

single complex

double complex

rocsolver_gels

x

x

x

x

Table 14 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

Table 15 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#

Table 16 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

Table 17 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

Table 18 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

Table 19 Singular value decomposition#

Function

single

double

single complex

double complex

rocsolver_gesvdj

x

x

x

x

Re-factorization and direct solvers#

Table 20 Triangular re-factorization#

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

Table 21 Direct solvers#

Function

single

double

single complex

double complex

rocsolver_csrrf_solve

x

x