ungbr_scratchpad_size

Computes size of scratchpad memory required for ungbr function.

Description

ungbr_scratchpad_size supports the following precisions.

T

std::complex<float>

std::complex<double>

Computes the number of elements of type \(T\) the scratchpad memory to be passed to ungbr function should be able to hold. Calls to this routine must specify the template parameter explicitly.

ungbr_scratchpad_size

Syntax

namespace oneapi::mkl::lapack {
  template <typename T>
  std::int64_t ungbr_scratchpad_size(sycl::queue &queue, oneapi::mkl::generate gen, std::int64_t m, std::int64_t n, std::int64_t k, std::int64_t lda, std::int64_t &scratchpad_size)
}

Input Parameters

queue

Device queue where calculations by ungbr function will be performed.

gen

Must be generate::q or generate::p.

If gen = generate::q, the routine generates the matrix \(Q\).

If gen = generate::p, the routine generates the matrix \(P^{T}\).

m

The number of rows in the matrix \(Q\) or \(P^{T}\) to be returned \((0 \le m)\).

If gen = generate::q, \(m \ge n \ge \min(m, k)\).

If gen = generate::p, \(n \ge m \ge \min(n, k)\).

n

The number of columns in the matrix \(Q\) or \(P^{T}\) to be returned \((0 \le n)\). See m for constraints.

k

If gen = generate::q, the number of columns in the original \(m \times k\) matrix reduced by gebrd.

If gen = generate::p, the number of rows in the original \(k \times n\) matrix reduced by gebrd.

lda

The leading dimension of a.

Return Value

The number of elements of type T the scratchpad memory to be passed to ungbr function should be able to hold.

Parent topic: LAPACK Singular Value and Eigenvalue Problem Routines