Visible to Intel only — GUID: GUID-735B6EA5-D0E5-4953-B922-0730A0DEB7DD
Visible to Intel only — GUID: GUID-735B6EA5-D0E5-4953-B922-0730A0DEB7DD
mkl_sparse_set_sm_hint
Provides estimate of number and type of upcoming triangular matrix solve with multiple right hand sides operations.
Syntax
sparse_status_t mkl_sparse_set_sm_hint (const sparse_matrix_t A, const sparse_operation_t operation, const struct matrix_descr descr, const sparse_layout_t layout, const MKL_INT dense_matrix_size, const MKL_INT expected_calls);
Include Files
- mkl_spblas.h
Description
The mkl_sparse_set_sm_hint routine provides an estimate of the number of upcoming triangular matrix solve with multiple right hand sides operations and type of these operations for performance optimization purposes.
Product and Performance Information |
---|
Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex. Notice revision #20201201 |
Input Parameters
- operation
-
Specifies operation op() on input matrix.
SPARSE_OPERATION_NON_TRANSPOSE
Non-transpose, op(A) = A.
SPARSE_OPERATION_TRANSPOSE
Transpose, op(A) = AT.
SPARSE_OPERATION_CONJUGATE_TRANSPOSE
Conjugate transpose, op(A) = AH.
- descr
-
Structure specifying sparse matrix properties.
sparse_matrix_type_t type - Specifies the type of a sparse matrix:
SPARSE_MATRIX_TYPE_GENERAL
The matrix is processed as is.
SPARSE_MATRIX_TYPE_SYMMETRIC
The matrix is symmetric (only the requested triangle is processed).
SPARSE_MATRIX_TYPE_HERMITIAN
The matrix is Hermitian (only the requested triangle is processed).
SPARSE_MATRIX_TYPE_TRIANGULAR
The matrix is triangular (only the requested triangle is processed).
SPARSE_MATRIX_TYPE_DIAGONAL
The matrix is diagonal (only diagonal elements are processed).
SPARSE_MATRIX_TYPE_BLOCK_TRIANGULAR
The matrix is block-triangular (only requested triangle is processed). Applies to BSR format only.
SPARSE_MATRIX_TYPE_BLOCK_DIAGONAL
The matrix is block-diagonal (only diagonal blocks are processed). Applies to BSR format only.
sparse_fill_mode_t mode - Specifies the triangular matrix part for symmetric, Hermitian, triangular, and block-triangular matrices:
SPARSE_FILL_MODE_LOWER
The lower triangular matrix part is processed.
SPARSE_FILL_MODE_UPPER
The upper triangular matrix part is processed.
sparse_diag_type_t diag - Specifies diagonal type for non-general matrices:
SPARSE_DIAG_NON_UNIT
Diagonal elements might not be equal to one.
SPARSE_DIAG_UNIT
Diagonal elements are equal to one. - layout
-
Specifies layout of elements:
SPARSE_LAYOUT_COLUMN_MAJOR
Storage of elements uses column major layout.
SPARSE_LAYOUT_ROW_MAJOR
Storage of elements uses row major layout.
- dense_matrix_size
-
Number of right-hand-side.
- expected_calls
-
Number of expected calls to execution routine.
Output Parameters
- A
-
Handle containing internal data.
Return Values
The function returns a value indicating whether the operation was successful or not, and why.
SPARSE_STATUS_SUCCESS |
The operation was successful. |
SPARSE_STATUS_NOT_INITIALIZED |
The routine encountered an empty handle or matrix array. |
SPARSE_STATUS_ALLOC_FAILED |
Internal memory allocation failed. |
SPARSE_STATUS_INVALID_VALUE |
The input parameters contain an invalid value. |
SPARSE_STATUS_EXECUTION_FAILED |
Execution failed. |
SPARSE_STATUS_INTERNAL_ERROR |
An error in algorithm implementation occurred. |
SPARSE_STATUS_NOT_SUPPORTED |
The requested operation is not supported. |