onemkl::sparse::trmvOptimize¶
Performs internal optimizations for onemkl::sparse::trmv by analyzing the matrix structure.
Syntax
Note
Currently, complex types are not supported.
The API is the same when using SYCL buffers or USM pointers.
-
void
onemkl::sparse
::
trmvOptimize
(cl::sycl::queue &queue, onemkl::uplo uplo_val, onemkl::transpose transpose_val, onemkl::diag diag_val, matrixHandle_t handle)¶
Include Files
mkl_spblas_sycl.hpp
Description
Note
Refer to Exceptions for a detailed description of the exceptions thrown. The onemkl::sparse::trmvOptimize routine analyzes matrix structure and performs optimizations. Optimized data is then stored in the handle.
Input Parameters
- queue
Specifies the SYCL command queue which will be used for SYCL kernels execution.
- uplo_val
Specifies the triangular matrix part for the input matrix.
onemkl::uplo::lower
The lower triangular matrix part is processed.
onemkl::uplo::upper
The upper triangular matrix part is processed.
- transpose_val
Specifies operation
op()
on input matrix.onemkl::transpose::nontrans
Non-transpose,
op(A)
=A
.onemkl::transpose::trans
Transpose,
op(A)
=A
T.onemkl::transpose::conjtrans
Conjugate transpose,
op(A)
=A
H.Note
Currently, the only supported case for
operation
is onemkl::transpose::nontrans.- diag_val
Specifies if the input matrix has a unit diagonal or not.
onemkl::diag::nonunit
Diagonal elements might not be equal to one.
onemkl::diag::unit
Diagonal elements are equal to one.
- handle
Handle to object containing sparse matrix and other internal data. Created using one of the onemkl::sparse::set<sparse_matrix_type>structure routines.
Note
Currently, the only supported case for <sparse_matrix_type> is CSR.
Parent topic: Sparse BLAS Routines