Visible to Intel only — GUID: GUID-B51B6159-41DE-4BC7-95C8-E2F7C8B164AC
Visible to Intel only — GUID: GUID-B51B6159-41DE-4BC7-95C8-E2F7C8B164AC
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.