gesvd_scratchpad_size#
Computes size of scratchpad memory required for gesvd function.
Description
gesvd_scratchpad_size
supports the following precisions.
T
float
double
std::complex<float>
std::complex<double>
Computes the number of elements of type T
the scratchpad memory to be passed to gesvd function should be able to hold.
Calls to this routine must specify the template parameter explicitly.
gesvd_scratchpad_size#
Syntax
namespace oneapi::mkl::lapack {
template <typename T>
std::int64_t gesvd_scratchpad_size(sycl::queue &queue, oneapi::mkl::job jobu, oneapi::mkl::job jobvt, std::int64_t m, std::int64_t n, std::int64_t lda, std::int64_t ldu, std::int64_t ldvt)
}
Input Parameters
- queue
Device queue where calculations by gesvd function will be performed.
- jobu
Must be
job::allvec
,job::somevec
,job::overwritevec
, orjob::novec
. Specifies options for computing all or part of the matrix \(U\).If
jobu = job::allvec
, all \(m\) columns of \(U\) are returned in the bufferu
;if
jobu = job::somevec
, the first \(\min(m, n)\) columns of \(U\) (the left singular vectors) are returned in the bufferv
;if
jobu = job::overwritevec
, the first \(\min(m, n)\) columns of \(U\) (the left singular vectors) are overwritten on the buffera
;if
jobu = job::novec
, no columns of \(U\) (no left singular vectors) are computed.- jobvt
Must be
job::allvec
,job::somevec
,job::overwritevec
, orjob::novec
. Specifies options for computing all or part of the matrix \(V^T/V^H\).If
jobvt = job::allvec
, all \(n\) columns of \(V^T/V^H\) are returned in the buffervt
;if
jobvt = job::somevec
, the first \(\min(m, n)\) columns of \(V^T/V^H\) (the left singular vectors) are returned in the buffervt
;if
jobvt = job::overwritevec
, the first \(\min(m, n)\) columns of \(V^T/V^H\) (the left singular vectors) are overwritten on the buffera
;if
jobvt = job::novec
, no columns of \(V^T/V^H\) (no left singular vectors) are computed.- m
The number of rows in the matrix \(A\) (\(0 \le m\)).
- n
The number of columns in the matrix \(A\) (\(0 \le n\)).
- lda
The leading dimension of
a
.- ldu
The leading dimension of
u
.- ldvt
The leading dimension of
vt
.
Return Value
The number of elements of type T
the scratchpad memory to be passed to gesvd function should be able to hold.
Parent topic: LAPACK Singular Value and Eigenvalue Problem Routines