|
| 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) |
| |
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 blocking with respect to the host.
-
Currently, only
rocsparse_matrix_type_general is supported.
-
This routine does not support execution in a hipGraph context.
- Parameters
-
| [in] | handle | - handle to the rocSPARSE library context queue. |
| [in] | m | - number of rows of the sparse CSR matrix \(A\), \(B\), and \(C\). |
| [in] | n | - number of columns of the sparse CSR matrix \(A\), \(B\), and \(C\). |
| [in] | descr_A | - descriptor of the sparse CSR matrix \(A\). Currently, only rocsparse_matrix_type_general is supported. |
| [in] | nnz_A | - number of non-zero entries of the sparse CSR matrix \(A\). |
| [in] | csr_row_ptr_A | - array of m+1 elements that point to the start of every row of the sparse CSR matrix \(A\). |
| [in] | csr_col_ind_A | - array of nnz_A elements containing the column indices of the sparse CSR matrix \(A\). |
| [in] | descr_B | - descriptor of the sparse CSR matrix \(B\). Currently, only rocsparse_matrix_type_general is supported. |
| [in] | nnz_B | - number of non-zero entries of the sparse CSR matrix \(B\). |
| [in] | csr_row_ptr_B | - array of m+1 elements that point to the start of every row of the sparse CSR matrix \(B\). |
| [in] | csr_col_ind_B | - array of nnz_B elements containing the column indices of the sparse CSR matrix \(B\). |
| [in] | descr_C | - descriptor of the sparse CSR matrix \(C\). Currently, only rocsparse_matrix_type_general is supported. |
| [out] | csr_row_ptr_C | - array of m+1 elements that point to the start of every row of the sparse CSR matrix \(C\). |
| [out] | nnz_C | - pointer 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_success | the operation completed successfully. |
| rocsparse_status_invalid_handle | the library context was not initialized. |
| rocsparse_status_invalid_size | m, n, nnz_A, or nnz_B is invalid. |
| rocsparse_status_invalid_pointer | descr_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_implemented | rocsparse_matrix_type != rocsparse_matrix_type_general. |