hipsparsesbsric02_analysis Interface Reference

hipsparsesbsric02_analysis Interface Reference#

HIPFORT API Reference: hipfort_hipsparse::hipsparsesbsric02_analysis Interface Reference
hipfort_hipsparse::hipsparsesbsric02_analysis Interface Reference

Public Member Functions

integer(kind(hipsparse_status_success)) function hipsparsesbsric02_analysis_ (handle, dira, mb, nnzb, descra, bsrvala, bsrrowptra, bsrcolinda, blockdim, myinfo, policy, pbuffer)
 
integer(kind(hipsparse_status_success)) function hipsparsesbsric02_analysis_rank_0 (handle, dira, mb, nnzb, descra, bsrvala, bsrrowptra, bsrcolinda, blockdim, myinfo, policy, pbuffer)
 
integer(kind(hipsparse_status_success)) function hipsparsesbsric02_analysis_rank_1 (handle, dira, mb, nnzb, descra, bsrvala, bsrrowptra, bsrcolinda, blockdim, myinfo, policy, pbuffer)
 

Detailed Description

hipsparseXbsric02_analysis performs the analysis step for hipsparseSbsric02 "hipsparseXbsric02()". 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- direction that specifies whether to count non-zero elements by HIPSPARSE_DIRECTION_ROW or by HIPSPARSE_DIRECTION_COLUMN.
[in]mb- number of block rows in the sparse BSR matrix.
[in]nnzb- number of non-zero block entries of the sparse BSR matrix.
[in]descrA- descriptor of the sparse BSR matrix.
[in]bsrValA- array of length nnzb*blockDim*blockDim containing the values of the sparse BSR matrix.
[in]bsrRowPtrA- array of mb+1 elements that point to the start of every block row of the sparse BSR matrix.
[in]bsrColIndA- array of nnzb elements containing the block column indices of the sparse BSR matrix.
[in]blockDim- the block dimension of the BSR matrix, which is between 1 and m where m=mb*blockDim.
[out]myInfo- structure that holds the information collected during the analysis step.
[in]policy- HIPSPARSE_SOLVE_POLICY_NO_LEVEL or HIPSPARSE_SOLVE_POLICY_USE_LEVEL.
[in]pBuffer- temporary storage buffer allocated by the user.
Return values
HIPSPARSE_STATUS_SUCCESSthe operation completed successfully.
HIPSPARSE_STATUS_INVALID_VALUEhandle, mb, nnzb, blockDim, descrA, bsrValA, bsrRowPtrA, bsrColIndA, info, or pBuffer pointer is invalid.
HIPSPARSE_STATUS_INTERNAL_ERRORan internal error occurred.
HIPSPARSE_STATUS_NOT_SUPPORTEDhipsparseMatrixType_t != HIPSPARSE_MATRIX_TYPE_GENERAL.

Member Function/Subroutine Documentation

◆ hipsparsesbsric02_analysis_()

integer(kind(hipsparse_status_success)) function hipfort_hipsparse::hipsparsesbsric02_analysis::hipsparsesbsric02_analysis_ ( type(c_ptr), value  handle,
integer(kind(hipsparse_direction_row)), value  dira,
integer(c_int), value  mb,
integer(c_int), value  nnzb,
type(c_ptr), value  descra,
type(c_ptr), value  bsrvala,
type(c_ptr), value  bsrrowptra,
type(c_ptr), value  bsrcolinda,
integer(c_int), value  blockdim,
type(c_ptr), value  myinfo,
integer(kind(hipsparse_solve_policy_no_level)), value  policy,
type(c_ptr), value  pbuffer 
)

◆ hipsparsesbsric02_analysis_rank_0()

integer(kind(hipsparse_status_success)) function hipfort_hipsparse::hipsparsesbsric02_analysis::hipsparsesbsric02_analysis_rank_0 ( type(c_ptr)  handle,
integer(kind(hipsparse_direction_row))  dira,
integer(c_int)  mb,
integer(c_int)  nnzb,
type(c_ptr)  descra,
real(c_float), target  bsrvala,
integer(c_int), target  bsrrowptra,
integer(c_int), target  bsrcolinda,
integer(c_int)  blockdim,
type(c_ptr)  myinfo,
integer(kind(hipsparse_solve_policy_no_level))  policy,
type(c_ptr)  pbuffer 
)

◆ hipsparsesbsric02_analysis_rank_1()

integer(kind(hipsparse_status_success)) function hipfort_hipsparse::hipsparsesbsric02_analysis::hipsparsesbsric02_analysis_rank_1 ( type(c_ptr)  handle,
integer(kind(hipsparse_direction_row))  dira,
integer(c_int)  mb,
integer(c_int)  nnzb,
type(c_ptr)  descra,
real(c_float), dimension(:), target  bsrvala,
integer(c_int), dimension(:), target  bsrrowptra,
integer(c_int), dimension(:), target  bsrcolinda,
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: