hipsparsesbsrsm2_analysis Interface Reference#
hipfort_hipsparse::hipsparsesbsrsm2_analysis Interface Reference
Sparse triangular system solve using the BSR storage format. More...
Public Member Functions | |
| integer(kind(hipsparse_status_success)) function | hipsparsesbsrsm2_analysis_ (handle, dira, transa, transx, mb, nrhs, nnzb, descra, bsrsortedvala, bsrsortedrowptra, bsrsortedcolinda, blockdim, myinfo, policy, pbuffer) |
| integer(kind(hipsparse_status_success)) function | hipsparsesbsrsm2_analysis_rank_0 (handle, dira, transa, transx, mb, nrhs, nnzb, descra, bsrsortedvala, bsrsortedrowptra, bsrsortedcolinda, blockdim, myinfo, policy, pbuffer) |
| integer(kind(hipsparse_status_success)) function | hipsparsesbsrsm2_analysis_rank_1 (handle, dira, transa, transx, mb, nrhs, nnzb, descra, bsrsortedvala, bsrsortedrowptra, bsrsortedcolinda, blockdim, myinfo, policy, pbuffer) |
Detailed Description
Sparse triangular system solve using the BSR storage format.
hipsparseXbsrsm2_analysis performs the analysis step for hipsparseSbsrsm2_solve "hipsparseXbsrsm2_solve()". It is expected that this function will be executed only once for a given matrix and particular operation type.
- Note
- If the matrix sparsity pattern changes, the gathered information will become invalid.
- This function is non-blocking and executed asynchronously with respect to the host. It can return before the actual computation has finished.
- Parameters
-
[in] handle - handle to the hipSPARSE library context queue. [in] dirA - matrix storage of BSR blocks. [in] transA - matrix \(A\) operation type. [in] transX - matrix \(X\) operation type. [in] mb - number of block rows of the sparse BSR matrix \(A\). [in] nrhs - number of columns of the dense matrix \(op(X)\). [in] nnzb - number of non-zero blocks of the sparse BSR matrix \(A\). [in] descrA - descriptor of the sparse BSR matrix \(A\). [in] bsrSortedValA - array of nnzbblocks of the sparse BSR matrix \(A\).[in] bsrSortedRowPtrA - array of mb+1elements that point to the start of every block row of the sparse BSR matrix \(A\).[in] bsrSortedColIndA - array of nnzbcontaining the block column indices of the sparse BSR matrix \(A\).[in] blockDim - block dimension of the sparse BSR matrix \(A\). [out] myInfo - structure that holds the information collected during the analysis step. [in] policy - HIPSPARSE_SOLVE_POLICY_NO_LEVELorHIPSPARSE_SOLVE_POLICY_USE_LEVEL.[in] pBuffer - temporary storage buffer allocated by the user.
- Return values
-
HIPSPARSE_STATUS_SUCCESS the operation completed successfully. HIPSPARSE_STATUS_INVALID_VALUE handle,mb,nrhs,nnzb,blockDim,descrA,bsrSortedValA,bsrSortedRowPtrA,bsrSortedColIndA,info, orpBufferis invalid.HIPSPARSE_STATUS_INTERNAL_ERROR an internal error occurred. HIPSPARSE_STATUS_NOT_SUPPORTED transA==HIPSPARSE_OPERATION_CONJUGATE_TRANSPOSE,transX==HIPSPARSE_OPERATION_CONJUGATE_TRANSPOSE, orhipsparseMatrixType_t!=HIPSPARSE_MATRIX_TYPE_GENERAL.
Member Function/Subroutine Documentation
◆ hipsparsesbsrsm2_analysis_()
| integer(kind(hipsparse_status_success)) function hipfort_hipsparse::hipsparsesbsrsm2_analysis::hipsparsesbsrsm2_analysis_ | ( | type(c_ptr), value | handle, |
| integer(kind(hipsparse_direction_row)), value | dira, | ||
| integer(kind(hipsparse_operation_non_transpose)), value | transa, | ||
| integer(kind(hipsparse_operation_non_transpose)), value | transx, | ||
| integer(c_int), value | mb, | ||
| integer(c_int), value | nrhs, | ||
| integer(c_int), value | nnzb, | ||
| type(c_ptr), value | descra, | ||
| type(c_ptr), value | bsrsortedvala, | ||
| type(c_ptr), value | bsrsortedrowptra, | ||
| type(c_ptr), value | bsrsortedcolinda, | ||
| integer(c_int), value | blockdim, | ||
| type(c_ptr), value | myinfo, | ||
| integer(kind(hipsparse_solve_policy_no_level)), value | policy, | ||
| type(c_ptr), value | pbuffer | ||
| ) |
◆ hipsparsesbsrsm2_analysis_rank_0()
| integer(kind(hipsparse_status_success)) function hipfort_hipsparse::hipsparsesbsrsm2_analysis::hipsparsesbsrsm2_analysis_rank_0 | ( | type(c_ptr) | handle, |
| integer(kind(hipsparse_direction_row)) | dira, | ||
| integer(kind(hipsparse_operation_non_transpose)) | transa, | ||
| integer(kind(hipsparse_operation_non_transpose)) | transx, | ||
| integer(c_int) | mb, | ||
| integer(c_int) | nrhs, | ||
| integer(c_int) | nnzb, | ||
| type(c_ptr) | descra, | ||
| real(c_float), target | bsrsortedvala, | ||
| integer(c_int), target | bsrsortedrowptra, | ||
| integer(c_int), target | bsrsortedcolinda, | ||
| integer(c_int) | blockdim, | ||
| type(c_ptr) | myinfo, | ||
| integer(kind(hipsparse_solve_policy_no_level)) | policy, | ||
| type(c_ptr) | pbuffer | ||
| ) |
◆ hipsparsesbsrsm2_analysis_rank_1()
| integer(kind(hipsparse_status_success)) function hipfort_hipsparse::hipsparsesbsrsm2_analysis::hipsparsesbsrsm2_analysis_rank_1 | ( | type(c_ptr) | handle, |
| integer(kind(hipsparse_direction_row)) | dira, | ||
| integer(kind(hipsparse_operation_non_transpose)) | transa, | ||
| integer(kind(hipsparse_operation_non_transpose)) | transx, | ||
| integer(c_int) | mb, | ||
| integer(c_int) | nrhs, | ||
| integer(c_int) | nnzb, | ||
| type(c_ptr) | descra, | ||
| real(c_float), dimension(:), target | bsrsortedvala, | ||
| integer(c_int), dimension(:), target | bsrsortedrowptra, | ||
| integer(c_int), dimension(:), target | bsrsortedcolinda, | ||
| integer(c_int) | blockdim, | ||
| type(c_ptr) | myinfo, | ||
| integer(kind(hipsparse_solve_policy_no_level)) | policy, | ||
| type(c_ptr) | pbuffer | ||
| ) |
The documentation for this interface was generated from the following file: