unmqr_scratchpad_size#

Computes size of scratchpad memory required for unmqr (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 unmqr (buffer or USM version) function must be able to hold.

API#

Syntax#

namespace oneapi::mkl::lapack {
  template<typename T>
  int64_t unmqr_scratchpad_size(sycl::queue &queue,
  mkl::side side,
  mkl::transpose trans,
  int64_t m,
  int64_t n,
  int64_t k,
  int64_t lda,
  int64_t ldc)
}

Input Parameters#

queue

Device queue where calculations by the unmqr (buffer or USM version) function will be performed.

side

If side = mkl::side::left, Q or QT is applied to C from the left. If side = mkl::side::right, Q or QT is applied to C from the right.

trans

If trans=mkl::transpose::trans, the routine multiplies C by Q.

If trans=mkl::transpose::nontrans, the routine multiplies C by QT.

m

The number of rows in the matrix A (0 m).

n

The number of columns in the matrix A (0 n m).

k

The number of elementary reflectors whose product defines the matrix Q (0 k n).

lda

The leading dimension of a.

ldc

The leading dimension of c.

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 info() method of the exception object.

Return Values#

The number of elements of type T the scratchpad memory to be passed to the unmqr (buffer or USM version) function must be able to hold.