trtrs_scratchpad_size

Computes size of scratchpad memory required for trtrs (USM Version) function. This routine belongs to the oneapi::mkl::lapacknamespace.

Syntax

template<typename T>
std::int64_t gebrd_scratchpad_size(cl::sycl::queue &queue, mkl::uplo uplo, mkl::transpose trans, mkl::diag diag, std::int64_t n, std::int64_t lda, std::int64_t ldb)

Description

Computes the number of elements of type T the scratchpad memory to be passed to the trtrs (buffer or USM version) function should be able to hold.

Input Parameters

queue

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

uplo

Indicates whether A is upper or lower triangular:

If uplo = uplo::upper, then A is upper triangular.

If uplo = uplo::lower, then A is lower triangular.

trans

If transa = transpose::nontrans, then A*X = B is solved for X.

If transa = transpose::trans, then AT*X = B is solved for X.

If transa = transpose::conjtrans, then AH*X = B is solved for X.

diag

If diag = diag::nonunit, then A is not a unit triangular matrix.

If diag = diag::unit, then A is unit triangular: diagonal elements of A are assumed to be 1 and not referenced in the array a.

n

The order of A; the number of rows in B; n 0.

nrhs

The number of right-hand sides; nrhs 0.

lda

The leading dimension of a; lda max(1, n).

ldb

The leading dimension of b; ldb max(1, n).

Exceptions

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 trtrs (buffer or USM version) function should be able to hold.