rocsparse_csrgeam_nnz Interface Reference

rocsparse_csrgeam_nnz Interface Reference#

HIPFORT API Reference: hipfort_rocsparse::rocsparse_csrgeam_nnz Interface Reference
hipfort_rocsparse::rocsparse_csrgeam_nnz Interface Reference

Sparse matrix sparse matrix addition using CSR storage format. More...

Public Member Functions

integer(kind(rocsparse_status_success)) function rocsparse_csrgeam_nnz_ (handle, m, n, descr_A, nnz_A, csr_row_ptr_A, csr_col_ind_A, descr_B, nnz_B, csr_row_ptr_B, csr_col_ind_B, descr_C, csr_row_ptr_C, nnz_C)
 
integer(kind(rocsparse_status_success)) function rocsparse_csrgeam_nnz_rank_0 (handle, m, n, descr_A, nnz_A, csr_row_ptr_A, csr_col_ind_A, descr_B, nnz_B, csr_row_ptr_B, csr_col_ind_B, descr_C, csr_row_ptr_C, nnz_C)
 
integer(kind(rocsparse_status_success)) function rocsparse_csrgeam_nnz_rank_1 (handle, m, n, descr_A, nnz_A, csr_row_ptr_A, csr_col_ind_A, descr_B, nnz_B, csr_row_ptr_B, csr_col_ind_B, descr_C, csr_row_ptr_C, nnz_C)
 

Detailed Description

Sparse matrix sparse matrix addition using CSR storage format.

rocsparse_csrgeam_nnz computes the total CSR non-zero elements and the CSR row offsets, that point to the start of every row of the sparse CSR matrix, of the resulting matrix C. It is assumed that csr_row_ptr_C has been allocated with size m + 1.

Note
This function is non blocking and executed asynchronously with respect to the host. It may return before the actual computation has finished.
Currently, only rocsparse_matrix_type_general is supported.
Parameters
[in]handlehandle to the rocsparse library context queue.
[in]mnumber of rows of the sparse CSR matrix \(A\), \(B\) and \(C\).
[in]nnumber of columns of the sparse CSR matrix \(A\), \(B\) and \(C\).
[in]descr_Adescriptor of the sparse CSR matrix \(A\). Currenty, only rocsparse_matrix_type_general is supported.
[in]nnz_Anumber of non-zero entries of the sparse CSR matrix \(A\).
[in]csr_row_ptr_Aarray of m+1 elements that point to the start of every row of the sparse CSR matrix \(A\).
[in]csr_col_ind_Aarray of nnz_A elements containing the column indices of the sparse CSR matrix \(A\).
[in]descr_Bdescriptor of the sparse CSR matrix \(B\). Currenty, only rocsparse_matrix_type_general is supported.
[in]nnz_Bnumber of non-zero entries of the sparse CSR matrix \(B\).
[in]csr_row_ptr_Barray of m+1 elements that point to the start of every row of the sparse CSR matrix \(B\).
[in]csr_col_ind_Barray of nnz_B elements containing the column indices of the sparse CSR matrix \(B\).
[in]descr_Cdescriptor of the sparse CSR matrix \(C\). Currenty, only rocsparse_matrix_type_general is supported.
[out]csr_row_ptr_Carray of m+1 elements that point to the start of every row of the sparse CSR matrix \(C\).
[out]nnz_Cpointer to the number of non-zero entries of the sparse CSR matrix \(C\). nnz_C can be a host or device pointer.
Return values
rocsparse_status_successthe operation completed successfully.
rocsparse_status_invalid_handlethe library context was not initialized.
rocsparse_status_invalid_sizem, n, nnz_A or nnz_B is invalid.
rocsparse_status_invalid_pointerdescr_A, csr_row_ptr_A, csr_col_ind_A, descr_B, csr_row_ptr_B, csr_col_ind_B, descr_C, csr_row_ptr_C or nnz_C is invalid.
rocsparse_status_not_implementedrocsparse_matrix_type != rocsparse_matrix_type_general.

Member Function/Subroutine Documentation

◆ rocsparse_csrgeam_nnz_()

integer(kind(rocsparse_status_success)) function hipfort_rocsparse::rocsparse_csrgeam_nnz::rocsparse_csrgeam_nnz_ ( type(c_ptr), value  handle,
integer(c_int), value  m,
integer(c_int), value  n,
type(c_ptr), value  descr_A,
integer(c_int), value  nnz_A,
type(c_ptr), value  csr_row_ptr_A,
type(c_ptr), value  csr_col_ind_A,
type(c_ptr), value  descr_B,
integer(c_int), value  nnz_B,
type(c_ptr), value  csr_row_ptr_B,
type(c_ptr), value  csr_col_ind_B,
type(c_ptr), value  descr_C,
type(c_ptr), value  csr_row_ptr_C,
type(c_ptr), value  nnz_C 
)

◆ rocsparse_csrgeam_nnz_rank_0()

integer(kind(rocsparse_status_success)) function hipfort_rocsparse::rocsparse_csrgeam_nnz::rocsparse_csrgeam_nnz_rank_0 ( type(c_ptr)  handle,
integer(c_int)  m,
integer(c_int)  n,
type(c_ptr)  descr_A,
integer(c_int)  nnz_A,
integer(c_int), target  csr_row_ptr_A,
integer(c_int), target  csr_col_ind_A,
type(c_ptr)  descr_B,
integer(c_int)  nnz_B,
integer(c_int), target  csr_row_ptr_B,
integer(c_int), target  csr_col_ind_B,
type(c_ptr)  descr_C,
integer(c_int), target  csr_row_ptr_C,
integer(c_int), target  nnz_C 
)

◆ rocsparse_csrgeam_nnz_rank_1()

integer(kind(rocsparse_status_success)) function hipfort_rocsparse::rocsparse_csrgeam_nnz::rocsparse_csrgeam_nnz_rank_1 ( type(c_ptr)  handle,
integer(c_int)  m,
integer(c_int)  n,
type(c_ptr)  descr_A,
integer(c_int)  nnz_A,
integer(c_int), dimension(:), target  csr_row_ptr_A,
integer(c_int), dimension(:), target  csr_col_ind_A,
type(c_ptr)  descr_B,
integer(c_int)  nnz_B,
integer(c_int), dimension(:), target  csr_row_ptr_B,
integer(c_int), dimension(:), target  csr_col_ind_B,
type(c_ptr)  descr_C,
integer(c_int), dimension(:), target  csr_row_ptr_C,
integer(c_int), dimension(:), target  nnz_C 
)

The documentation for this interface was generated from the following file: