Developer Reference for Intel® oneAPI Math Kernel Library for C
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 the operation performed on matrix A:
operation |
Description |
|---|---|
SPARSE_OPERATION_NON_TRANSPOSE |
\(op(A) = A\) |
SPARSE_OPERATION_TRANSPOSE |
\(op(A) = A^{T}\) |
SPARSE_OPERATION_CONJUGATE_TRANSPOSE |
\(op(A) = A^{H}\) |
descr
Descriptor specifying sparse matrix properties.
sparse_matrix_type_t type |
Specifies the type of a sparse matrix:
|
sparse_fill_mode_t mode |
Specifies the triangular matrix part for symmetric, Hermitian, triangular, and block-triangular matrices:
|
sparse_diag_type_t diag |
Specifies diagonal type for non-general matrices:
|
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, and if not, why:
SPARSE_STATUS_SUCCESS |
The operation was successful or an additional optimization is currently not available. |
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. |