potrf_batch¶
Computes the Cholesky factorizations of a batch of symmetric (Hermitian) positive-definite matrices.
potrf_batch
supports the following precisions.
T
float
double
std::complex<float>
std::complex<double>
Description
The routine forms the Cholesky factorizations of a batch of
symmetric positive-definite or, for complex data, Hermitian
positive-definite matrices A
1, A
2, …,
A
1batch_size
A
i = U
iT * U
i for
real data, If uplo[i] = onemkl::uplo::upper
A
i = U
iH * U
i for
complex data.
A
i = L
iT * L
i for
real data, If uplo[i] = onemkl::uplo::lower
A
i = L
iH * L
i for
complex data.
Where L
i is a lower triangular matrix and
U
i is an upper triangular matrix.
potrf_batch (BUFFER Version)¶
Syntax
-
void
onemkl::lapack
::
potrf_batch
(cl::sycl::queue &queue, std::vector<onemkl::uplo> const &uplo, std::vector<std::int64_t> const &n, std::vector<cl::sycl::buffer<T, 1>> &a, std::vector<std::int64_t> const &lda, std::vector<cl::sycl::buffer<std::int64_t, 1>> &info)¶
Input Parameters
- queue
The queue where the routine should be executed.
- uplo
A vector,
uplo[i]
indicates whether the upper or lower triangular part of the matrixA
i is stored and howA
i is factored:If
uplo = onemkl::upper
, then buffera[i]
stores the upper triangular part ofA
i and the strictly lower triangular part of the matrix is not referenced.If
uplo = onemkl::lower
, then buffera[i]
stores the lower triangular part ofA
i and the strictly upper triangular part of the matrix is not referenced.- n
A vector,
n[i]
is the number of columns of the batch matrixA
i(0≤n[i])
.- a
A vector of buffers,
a[i]
stores the matrixA
i.a[i]
must be of size at leastlda[i]*max(1, n[i])
.- lda
A vector,
lda[i]
is the leading dimension ofa[i] (n[i]≤lda[i])
.
Output Parameters
- a
a[i]
is overwritten by the Cholesky factorU
i orL
i, as specified byuplo[i]
.- info
Vector of buffers containing error information.
If
info[i]=0
, the execution is successful.If
info[i]=k
, the leading minor of orderk
(and therefore the matrixA
i itself) is not positive-definite, and the factorization could not be completed. This may indicate an error in forming the matrixA
i.If
info[i]=-k
, thek
-th parameter had an illegal value.
Parent topic: LAPACK-like Extensions Routines