getri_batch (Buffer Strided Version)

Computes the batch of inverses of an LU-factored general matrices determined by getrf_batch (Buffer stride version) function. This routine belongs to the oneapi::mkl::lapack namespace.

Description

The routine computes the inverses A i-1 of a general matrices A i. Before calling this routine, call getrf_batch (Buffer Strided Version) function to factorize A i.

API

Syntax

namespace oneapi::mkl::lapack {
 sycl::event getri_batch(sycl::queue &queue,
 std::int64_t n,
 sycl::buffer<T> &a,
 std::int64_t lda,
 std::int64_t stride_a,
 sycl::buffer<std::int64_t> &ipiv,
 std::int64_t stride_ipiv,
 std::int64_t batch_size,
 sycl::buffer<T> &scratchpad,
 std::int64_t scratchpad_size)
}

This function supports the following precisions and devices:

T

Devices supported

float

CPU and GPU

double

CPU and GPU

std::complex<float>

CPU and GPU

std::complex<double>

CPU and GPU

Input Parameters

queue

Device queue where calculations will be performed.

n

The order of the matrices Ai (0 n).

a

Result of the getrf_batch (Buffer Strided Version) function

lda

The leading dimension of Ai (lda n).

stride_a

The stride between the beginnings of matrices Ai inside the batch array a.

ipiv

The array as returned by getrf_batch (Buffer Strided Version).

stride_ipiv

The stride between the beginnings of arrays ipivi inside the array ipiv.

batch_size

The number of problems in a batch.

scratchpad

Scratchpad memory to be used by routine for storing intermediate results.

scratchpad_size

Size of scratchpad memory as a number of floating point elements of type T. Size should not be less than the value returned by stride version of getri_batch_scratchpad_size (Strided Version) function.

Output Parameters

a

Overwritten by the n-by-n matrices Ai-1.

Exceptions

Exception

Description

mkl::lapack::batch_exception

This exception is thrown when problems occur during calculations. You can obtain the info code of the problem using the info() method of the exception object:

If info = -n, the n-th parameter had an illegal value.

If info equals the value passed as scratchpad size, and detail() returns non-zero, then the passed scratchpad is of insufficient size, and the required size should be not less then value returned by the detail() method of the exception object.