hipSOLVER LAPACK-like functions#

Other Lapack-like routines provided by hipSOLVER are divided into the following subcategories:

Symmetric eigensolvers#

hipsolver<type>syevdx_bufferSize()#

hipsolverStatus_t hipsolverDsyevdx_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, const double *A, int lda, double vl, double vu, int il, int iu, int *nev, const double *W, int *lwork)#
hipsolverStatus_t hipsolverSsyevdx_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, const float *A, int lda, float vl, float vu, int il, int iu, int *nev, const float *W, int *lwork)#

hipsolver<type>heevdx_bufferSize()#

hipsolverStatus_t hipsolverZheevdx_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, const hipDoubleComplex *A, int lda, double vl, double vu, int il, int iu, int *nev, const double *W, int *lwork)#
hipsolverStatus_t hipsolverCheevdx_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, const hipFloatComplex *A, int lda, float vl, float vu, int il, int iu, int *nev, const float *W, int *lwork)#

hipsolver<type>syevdx()#

hipsolverStatus_t hipsolverDsyevdx(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, double *A, int lda, double vl, double vu, int il, int iu, int *nev, double *W, double *work, int lwork, int *devInfo)#
hipsolverStatus_t hipsolverSsyevdx(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, float *A, int lda, float vl, float vu, int il, int iu, int *nev, float *W, float *work, int lwork, int *devInfo)#

hipsolver<type>heevdx()#

hipsolverStatus_t hipsolverZheevdx(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, hipDoubleComplex *A, int lda, double vl, double vu, int il, int iu, int *nev, double *W, hipDoubleComplex *work, int lwork, int *devInfo)#
hipsolverStatus_t hipsolverCheevdx(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, hipFloatComplex *A, int lda, float vl, float vu, int il, int iu, int *nev, float *W, hipFloatComplex *work, int lwork, int *devInfo)#

hipsolver<type>syevj_bufferSize()#

hipsolverStatus_t hipsolverDsyevj_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, double *A, int lda, double *W, int *lwork, hipsolverSyevjInfo_t params)#
hipsolverStatus_t hipsolverSsyevj_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, float *A, int lda, float *W, int *lwork, hipsolverSyevjInfo_t params)#

hipsolver<type>heevj_bufferSize()#

hipsolverStatus_t hipsolverZheevj_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipDoubleComplex *A, int lda, double *W, int *lwork, hipsolverSyevjInfo_t params)#
hipsolverStatus_t hipsolverCheevj_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipFloatComplex *A, int lda, float *W, int *lwork, hipsolverSyevjInfo_t params)#

hipsolver<type>syevjBatched_bufferSize()#

hipsolverStatus_t hipsolverDsyevjBatched_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, double *A, int lda, double *W, int *lwork, hipsolverSyevjInfo_t params, int batch_count)#
hipsolverStatus_t hipsolverSsyevjBatched_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, float *A, int lda, float *W, int *lwork, hipsolverSyevjInfo_t params, int batch_count)#

hipsolver<type>heevjBatched_bufferSize()#

hipsolverStatus_t hipsolverZheevjBatched_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipDoubleComplex *A, int lda, double *W, int *lwork, hipsolverSyevjInfo_t params, int batch_count)#
hipsolverStatus_t hipsolverCheevjBatched_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipFloatComplex *A, int lda, float *W, int *lwork, hipsolverSyevjInfo_t params, int batch_count)#

hipsolver<type>syevj()#

hipsolverStatus_t hipsolverDsyevj(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, double *A, int lda, double *W, double *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params)#
hipsolverStatus_t hipsolverSsyevj(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, float *A, int lda, float *W, float *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params)#

hipsolver<type>heevj()#

hipsolverStatus_t hipsolverZheevj(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipDoubleComplex *A, int lda, double *W, hipDoubleComplex *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params)#
hipsolverStatus_t hipsolverCheevj(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipFloatComplex *A, int lda, float *W, hipFloatComplex *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params)#

hipsolver<type>syevjBatched()#

hipsolverStatus_t hipsolverDsyevjBatched(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, double *A, int lda, double *W, double *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params, int batch_count)#
hipsolverStatus_t hipsolverSsyevjBatched(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, float *A, int lda, float *W, float *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params, int batch_count)#

hipsolver<type>heevjBatched()#

hipsolverStatus_t hipsolverZheevjBatched(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipDoubleComplex *A, int lda, double *W, hipDoubleComplex *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params, int batch_count)#
hipsolverStatus_t hipsolverCheevjBatched(hipsolverHandle_t handle, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipFloatComplex *A, int lda, float *W, hipFloatComplex *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params, int batch_count)#

hipsolver<type>sygvdx_bufferSize()#

hipsolverStatus_t hipsolverDsygvdx_bufferSize(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, const double *A, int lda, const double *B, int ldb, double vl, double vu, int il, int iu, int *nev, const double *W, int *lwork)#
hipsolverStatus_t hipsolverSsygvdx_bufferSize(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, const float *A, int lda, const float *B, int ldb, float vl, float vu, int il, int iu, int *nev, const float *W, int *lwork)#

hipsolver<type>hegvdx_bufferSize()#

hipsolverStatus_t hipsolverZhegvdx_bufferSize(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, const hipDoubleComplex *A, int lda, const hipDoubleComplex *B, int ldb, double vl, double vu, int il, int iu, int *nev, const double *W, int *lwork)#
hipsolverStatus_t hipsolverChegvdx_bufferSize(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, const hipFloatComplex *A, int lda, const hipFloatComplex *B, int ldb, float vl, float vu, int il, int iu, int *nev, const float *W, int *lwork)#

hipsolver<type>sygvdx()#

hipsolverStatus_t hipsolverDsygvdx(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, double *A, int lda, double *B, int ldb, double vl, double vu, int il, int iu, int *nev, double *W, double *work, int lwork, int *devInfo)#
hipsolverStatus_t hipsolverSsygvdx(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, float *A, int lda, float *B, int ldb, float vl, float vu, int il, int iu, int *nev, float *W, float *work, int lwork, int *devInfo)#

hipsolver<type>hegvdx()#

hipsolverStatus_t hipsolverZhegvdx(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, hipDoubleComplex *A, int lda, hipDoubleComplex *B, int ldb, double vl, double vu, int il, int iu, int *nev, double *W, hipDoubleComplex *work, int lwork, int *devInfo)#
hipsolverStatus_t hipsolverChegvdx(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverEigRange_t range, hipblasFillMode_t uplo, int n, hipFloatComplex *A, int lda, hipFloatComplex *B, int ldb, float vl, float vu, int il, int iu, int *nev, float *W, hipFloatComplex *work, int lwork, int *devInfo)#

hipsolver<type>sygvj_bufferSize()#

hipsolverStatus_t hipsolverDsygvj_bufferSize(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, double *A, int lda, double *B, int ldb, double *W, int *lwork, hipsolverSyevjInfo_t params)#
hipsolverStatus_t hipsolverSsygvj_bufferSize(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, float *A, int lda, float *B, int ldb, float *W, int *lwork, hipsolverSyevjInfo_t params)#

hipsolver<type>hegvj_bufferSize()#

hipsolverStatus_t hipsolverZhegvj_bufferSize(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipDoubleComplex *A, int lda, hipDoubleComplex *B, int ldb, double *W, int *lwork, hipsolverSyevjInfo_t params)#
hipsolverStatus_t hipsolverChegvj_bufferSize(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipFloatComplex *A, int lda, hipFloatComplex *B, int ldb, float *W, int *lwork, hipsolverSyevjInfo_t params)#

hipsolver<type>sygvj()#

hipsolverStatus_t hipsolverDsygvj(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, double *A, int lda, double *B, int ldb, double *W, double *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params)#
hipsolverStatus_t hipsolverSsygvj(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, float *A, int lda, float *B, int ldb, float *W, float *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params)#

hipsolver<type>hegvj()#

hipsolverStatus_t hipsolverZhegvj(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipDoubleComplex *A, int lda, hipDoubleComplex *B, int ldb, double *W, hipDoubleComplex *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params)#
hipsolverStatus_t hipsolverChegvj(hipsolverHandle_t handle, hipsolverEigType_t itype, hipsolverEigMode_t jobz, hipsolverFillMode_t uplo, int n, hipFloatComplex *A, int lda, hipFloatComplex *B, int ldb, float *W, hipFloatComplex *work, int lwork, int *devInfo, hipsolverSyevjInfo_t params)#

Singular value decomposition#

hipsolver<type>gesvdj_bufferSize()#

hipsolverStatus_t hipsolverZgesvdj_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int econ, int m, int n, const hipDoubleComplex *A, int lda, const double *S, const hipDoubleComplex *U, int ldu, const hipDoubleComplex *V, int ldv, int *lwork, hipsolverGesvdjInfo_t params)#
hipsolverStatus_t hipsolverCgesvdj_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int econ, int m, int n, const hipFloatComplex *A, int lda, const float *S, const hipFloatComplex *U, int ldu, const hipFloatComplex *V, int ldv, int *lwork, hipsolverGesvdjInfo_t params)#
hipsolverStatus_t hipsolverDgesvdj_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int econ, int m, int n, const double *A, int lda, const double *S, const double *U, int ldu, const double *V, int ldv, int *lwork, hipsolverGesvdjInfo_t params)#
hipsolverStatus_t hipsolverSgesvdj_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int econ, int m, int n, const float *A, int lda, const float *S, const float *U, int ldu, const float *V, int ldv, int *lwork, hipsolverGesvdjInfo_t params)#

hipsolver<type>gesvdjBatched_bufferSize()#

hipsolverStatus_t hipsolverZgesvdjBatched_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int m, int n, const hipDoubleComplex *A, int lda, const double *S, const hipDoubleComplex *U, int ldu, const hipDoubleComplex *V, int ldv, int *lwork, hipsolverGesvdjInfo_t params, int batch_count)#
hipsolverStatus_t hipsolverCgesvdjBatched_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int m, int n, const hipFloatComplex *A, int lda, const float *S, const hipFloatComplex *U, int ldu, const hipFloatComplex *V, int ldv, int *lwork, hipsolverGesvdjInfo_t params, int batch_count)#
hipsolverStatus_t hipsolverDgesvdjBatched_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int m, int n, const double *A, int lda, const double *S, const double *U, int ldu, const double *V, int ldv, int *lwork, hipsolverGesvdjInfo_t params, int batch_count)#
hipsolverStatus_t hipsolverSgesvdjBatched_bufferSize(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int m, int n, const float *A, int lda, const float *S, const float *U, int ldu, const float *V, int ldv, int *lwork, hipsolverGesvdjInfo_t params, int batch_count)#

hipsolver<type>gesvdj()#

hipsolverStatus_t hipsolverZgesvdj(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int econ, int m, int n, hipDoubleComplex *A, int lda, double *S, hipDoubleComplex *U, int ldu, hipDoubleComplex *V, int ldv, hipDoubleComplex *work, int lwork, int *devInfo, hipsolverGesvdjInfo_t params)#
hipsolverStatus_t hipsolverCgesvdj(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int econ, int m, int n, hipFloatComplex *A, int lda, float *S, hipFloatComplex *U, int ldu, hipFloatComplex *V, int ldv, hipFloatComplex *work, int lwork, int *devInfo, hipsolverGesvdjInfo_t params)#
hipsolverStatus_t hipsolverDgesvdj(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int econ, int m, int n, double *A, int lda, double *S, double *U, int ldu, double *V, int ldv, double *work, int lwork, int *devInfo, hipsolverGesvdjInfo_t params)#
hipsolverStatus_t hipsolverSgesvdj(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int econ, int m, int n, float *A, int lda, float *S, float *U, int ldu, float *V, int ldv, float *work, int lwork, int *devInfo, hipsolverGesvdjInfo_t params)#

hipsolver<type>gesvdjBatched()#

hipsolverStatus_t hipsolverZgesvdjBatched(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int m, int n, hipDoubleComplex *A, int lda, double *S, hipDoubleComplex *U, int ldu, hipDoubleComplex *V, int ldv, hipDoubleComplex *work, int lwork, int *devInfo, hipsolverGesvdjInfo_t params, int batch_count)#
hipsolverStatus_t hipsolverCgesvdjBatched(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int m, int n, hipFloatComplex *A, int lda, float *S, hipFloatComplex *U, int ldu, hipFloatComplex *V, int ldv, hipFloatComplex *work, int lwork, int *devInfo, hipsolverGesvdjInfo_t params, int batch_count)#
hipsolverStatus_t hipsolverDgesvdjBatched(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int m, int n, double *A, int lda, double *S, double *U, int ldu, double *V, int ldv, double *work, int lwork, int *devInfo, hipsolverGesvdjInfo_t params, int batch_count)#
hipsolverStatus_t hipsolverSgesvdjBatched(hipsolverHandle_t handle, hipsolverEigMode_t jobz, int m, int n, float *A, int lda, float *S, float *U, int ldu, float *V, int ldv, float *work, int lwork, int *devInfo, hipsolverGesvdjInfo_t params, int batch_count)#