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 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 4 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 5 Symmetric matrices#

Function

single

double

single complex

double complex

rocsolver_lasyf

x

x

x

x

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

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

Table 8 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 9 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 10 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 11 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 12 Least-square solvers#

Function

single

double

single complex

double complex

rocsolver_gels

x

x

x

x

Table 13 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 14 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 15 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 16 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 17 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

Table 18 Singular value decomposition#

Function

single

double

single complex

double complex

rocsolver_gesvdj

x

x

x

x

Re-factorization and direct solvers#

Table 19 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 20 Direct solvers#

Function

single

double

single complex

double complex

rocsolver_csrrf_solve

x

x