optimize_gemv#
Performs internal optimizations for oneapi::mkl::sparse::gemv by analyzing the matrix structure.
Description and Assumptions
The oneapi::mkl::sparse::optimize_gemv routine analyzes matrix structure and performs optimizations. Optimized data is then stored in the handle.
Syntax
namespace oneapi::mkl::sparse {
sycl::event optimize_gemv (sycl::queue &queue,
oneapi::mkl::transpose transpose_val,
oneapi::mkl::sparse::matrix_handle_t handle,
const std::vector<sycl::event> &dependencies = {});
}
Input Parameters
- queue
Specifies the SYCL command queue which will be used for SYCL kernels execution.
- transpose_val
Specifies operation
op()
on input matrix. The possible options are described in transpose enum class.- handle
Handle to object containing sparse matrix and other internal data. Created using the oneapi::mkl::sparse::set_csr_data routine.
- dependencies
List of events that oneapi::mkl::sparse::optimize_gemv routine depends on.
Output Parameters
- handle
Handle might be updated with some internal optimized data by this routine.
Throws
This routine shall throw the following exceptions if the associated condition is detected. An implementation may throw additional implementation-specific exception(s) in case of error conditions not covered here.
Return Values
Output event that can be waited upon or added as a dependency for the completion of optimize_gemv routine.
Parent topic: Sparse BLAS