Visible to Intel only — GUID: GUID-296E9E4A-5B9A-4A63-8926-1C811FA35326
Visible to Intel only — GUID: GUID-296E9E4A-5B9A-4A63-8926-1C811FA35326
getri_batch (Out-of-place, USM Strided Version)
Computes the batch of inverses of an LU-factored general matrices determined by getrf_batch (USM stride version) function. This routine belongs to the oneapi::mkl::lapack namespace.
Description
The routine computes the inverses Ai-1 of a general matrices Ai. Before calling this routine, call getrf_batch (USM Strided Version) function to factorize Ai.
API
Syntax
namespace oneapi::mkl::lapack {
sycl::event getri_batch(sycl::queue &queue,
std::int64_t n,
T *a,
std::int64_t lda,
std::int64_t stride_a,
std::int64_t *ipiv,
std::int64_t stride_ipiv,
T* ainv,
std::int64_t ldainv,
std::int64_t stride_ainv,
std::int64_t batch_size,
T *scratchpad,
std::int64_t scratchpad_size,
const std::vector<sycl::event> &events = {})
}
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 (n ≥ 0).
- a
-
Result of the getrf_batch (USM Strided Version) function
- lda
-
The leading dimension of Ai (lda ≥ max(1, n)).
- stride_a
-
The stride between the beginnings of matrices Ai inside the batch array a (stride_a ≥ max(1, lda * n)).
- ipiv
-
The array as returned by getrf_batch (USM Strided Version).
- stride_ipiv
-
The stride between the beginnings of arrays ipivi inside the array ipiv (stride_ipiv ≥ max(1, n)).
- ldainv
-
The leading dimension of Ainvi (ldainv ≥ max(1, n)).
- stride_ainv
-
The stride between the beginnings of matrices Ainvi inside the batch array ainv (stride_ainv ≥ max(1, ldainv * n)).
- batch_size
-
The number of problems in a batch (batch_size ≥ 0).
- 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 the out-of-place, stride version of getri_batch_scratchpad_size (Strided Version) function.
- events
-
List of events to wait for before starting computation. Defaults to empty list.
Output Parameters
- ainv
-
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. |
Return Values
Output event to wait on to ensure computation is complete.