gesvd_scratchpad_size
Computes size of scratchpad memory required for
gesvd
(USM Version)
function. This routine belongs to the
oneapi::mkl::lapack
namespace.Description
Computes the number of elements of type T the scratchpad memory to
be passed to the
gesvd
(buffer or USM version) function should be
able to hold.API
Syntax
namespace oneapi::mkl::lapack {
template<typename T>
std::int64_t gesvd_scratchpad_size(cl::sycl::queue &queue,
mkl::jobsvd jobu,
mkl::jobsvd 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 the gesvd (buffer or USM version) function will be performed.
- jobu
- Must bejobsvd::vectors,jobsvd::somevec,jobsvd::vectorsina, orjobsvd::novec. Specifies options for computing all or part of the matrixU.Ifjobu = jobsvd::vectors, allmcolumns ofUare returned in the array u;ifjobu = jobsvd::somevec, the firstmin(m, n)columns ofU(the left singular vectors) are returned in the array u;ifjobu = jobsvd::vectorsina, the firstmin(m, n)columns ofU(the left singular vectors) are overwritten on the array a;ifjobu = jobsvd::novec, no columns ofU(no left singular vectors) are computed.
- jobvt
- Must bejobsvd::vectors, jobsvd::somevec,jobsvd::vectorsina, orjobsvd::novec. Specifies options for computing all or part of the matrixVT/VH.Ifjobvt = jobsvd::vectors, all n columns ofVT/VHare returned in the array vt;ifjobvt = jobsvd::somevec, the firstmin(m, n)columns ofVT/VH(the left singular vectors) are returned in the array vt;ifjobvt = jobsvd::vectorsina, the firstmin(m, n)columns ofVT/VH(the left singular vectors) are overwritten on the array a;ifjobvt = jobsvd::novec, no columns ofVT/VH(no left singular vectors) are computed.jobvt and jobu cannot both bejob::overwritevec.
- m
- The number of rows in the matrixA(0≤m).
- n
- The number of columns in the matrixA(0≤n).
- lda
- The leading dimension of a.
- ldu
- The leading dimension of u.
- ldvt
- The leading dimension of vt.
Exceptions
Exception | Description |
---|---|
mkl::lapack::exception | This exception is thrown when an incorrect argument value is supplied. You can determine the position of the incorrect argument by the get_info() method of the exception object. |
Return Values
The number of elements of type
T
the scratchpad memory to be
passed to the gesvd
(buffer or USM version) function should be
able to hold.