hipblassgetrfstridedbatched Interface Reference#
hipfort_hipblas::hipblassgetrfstridedbatched Interface Reference
SOLVER API. More...
Public Member Functions | |
| integer(kind(hipblas_status_success)) function | hipblassgetrfstridedbatched_ (handle, n, a, lda, stridea, ipiv, stridep, myinfo, batchcount) |
| integer(kind(hipblas_status_success)) function | hipblassgetrfstridedbatched_rank_0 (handle, n, a, lda, stridea, ipiv, stridep, myinfo, batchcount) |
| integer(kind(hipblas_status_success)) function | hipblassgetrfstridedbatched_rank_1 (handle, n, a, lda, stridea, ipiv, stridep, myinfo, batchcount) |
| integer(kind(hipblas_status_success)) function | hipblassgetrfstridedbatched_full_rank (handle, n, a, lda, stridea, ipiv, stridep, myinfo, batchcount) |
Detailed Description
SOLVER API.
The getrfStridedBatched functions compute the LU factorization of a batch of general n -by-n matrices using partial pivoting with row interchanges. The LU factorization can be done without pivoting if ipiv is passed as a nullptr.
When ipiv is not null, the factorization of matrix \(A_i\) in the batch has the form:
\[ A_i = P_iL_iU_i \]
where \(P_i\) is a permutation matrix, \(L_i\) is lower triangular with unit diagonal elements, and \(U_i\) is upper triangular.
When ipiv is null, the factorization is done without pivoting:
\[ A_i = L_iU_i \]
- Supported precisions in rocSOLVER :
s,d,c, andz. - Supported precisions in cuBLAS :
s,d,c, andz.
- Parameters
-
[in] handle - hipblasHandle_t. [in] n - int. n >= 0. The number of columns and rows of all matrices A_i in the batch. [in,out] A - pointer to type. Array on the GPU (the size depends on the value of strideA). - On entry, the n-by-n matrices A_i to be factored.
- On exit, the factors L_i and U_i from the factorization.
- The unit diagonal elements of L_i are not stored.
[in] lda - int. lda >= n. Specifies the leading dimension of matrices A_i. [in] strideA - hipblasStride. Stride from the start of one matrix A_i to the next one A_(i+1). There is no restriction for the value of strideA. Normal use case is strideA >= lda*n. [out] ipiv - pointer to int. Array on the GPU (the size depends on the value of strideP). Contains the vectors of pivots indices ipiv_i (corresponding to A_i). Dimension of ipiv_i is n. Elements of ipiv_i are 1-based indices. For each instance A_i in the batch and for 1 <= j <= n, row j of the matrix A_i was interchanged with row ipiv_i[j]. Matrix P_i of the factorization can be derived from ipiv_i. The factorization here can be done without pivoting if ipiv is passed in as a nullptr. [in] strideP - hipblasStride. Stride from the start of one vector ipiv_i to the next one ipiv_(i+1). There is no restriction for the value of strideP. Normal use case is strideP >= n. [out] myInfo - pointer to int. Array of batchCount integers on the GPU. - If info[i] = 0, successful exit for factorization of A_i.
- If info[i] = j > 0, U_i is singular. U_i[j,j] is the first zero pivot.
[in] batchCount - int. batchCount >= 0. Number of matrices in the batch.
Member Function/Subroutine Documentation
◆ hipblassgetrfstridedbatched_()
| integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblassgetrfstridedbatched::hipblassgetrfstridedbatched_ | ( | type(c_ptr), value | handle, |
| integer(c_int), value | n, | ||
| type(c_ptr), value | a, | ||
| integer(c_int), value | lda, | ||
| integer(c_int64_t), value | stridea, | ||
| type(c_ptr), value | ipiv, | ||
| integer(c_int64_t), value | stridep, | ||
| type(c_ptr), value | myinfo, | ||
| integer(c_int), value | batchcount | ||
| ) |
◆ hipblassgetrfstridedbatched_full_rank()
| integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblassgetrfstridedbatched::hipblassgetrfstridedbatched_full_rank | ( | type(c_ptr) | handle, |
| integer(c_int) | n, | ||
| real(c_float), dimension(:,:), target | a, | ||
| integer(c_int) | lda, | ||
| integer(c_int64_t) | stridea, | ||
| integer(c_int), dimension(:), target | ipiv, | ||
| integer(c_int64_t) | stridep, | ||
| type(c_ptr) | myinfo, | ||
| integer(c_int) | batchcount | ||
| ) |
◆ hipblassgetrfstridedbatched_rank_0()
| integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblassgetrfstridedbatched::hipblassgetrfstridedbatched_rank_0 | ( | type(c_ptr) | handle, |
| integer(c_int) | n, | ||
| real(c_float), target | a, | ||
| integer(c_int) | lda, | ||
| integer(c_int64_t) | stridea, | ||
| integer(c_int), target | ipiv, | ||
| integer(c_int64_t) | stridep, | ||
| type(c_ptr) | myinfo, | ||
| integer(c_int) | batchcount | ||
| ) |
◆ hipblassgetrfstridedbatched_rank_1()
| integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblassgetrfstridedbatched::hipblassgetrfstridedbatched_rank_1 | ( | type(c_ptr) | handle, |
| integer(c_int) | n, | ||
| real(c_float), dimension(:), target | a, | ||
| integer(c_int) | lda, | ||
| integer(c_int64_t) | stridea, | ||
| integer(c_int), dimension(:), target | ipiv, | ||
| integer(c_int64_t) | stridep, | ||
| type(c_ptr) | myinfo, | ||
| integer(c_int) | batchcount | ||
| ) |
The documentation for this interface was generated from the following file: