31#if defined(USE_ONEMATH)
32#include <oneapi/math.hpp>
34#include <oneapi/mkl.hpp>
37#include <sycl/sycl.hpp>
39#include "dpnp4pybind11.hpp"
41namespace dpnp::extensions::sparse
70extern std::tuple<std::uintptr_t, int, sycl::event>
71 sparse_gemv_init(sycl::queue &exec_q,
73 const dpnp::tensor::usm_ndarray &row_ptr,
74 const dpnp::tensor::usm_ndarray &col_ind,
75 const dpnp::tensor::usm_ndarray &values,
76 const std::int64_t num_rows,
77 const std::int64_t num_cols,
78 const std::int64_t nnz,
79 const std::vector<sycl::event> &depends);
102extern std::pair<sycl::event, sycl::event>
103 sparse_gemv_compute(sycl::queue &exec_q,
104 const std::uintptr_t handle_ptr,
105 const int val_type_id,
108 const dpnp::tensor::usm_ndarray &x,
110 const dpnp::tensor::usm_ndarray &y,
111 const std::int64_t num_rows,
112 const std::int64_t num_cols,
113 const std::vector<sycl::event> &depends);
122extern sycl::event sparse_gemv_release(sycl::queue &exec_q,
123 const std::uintptr_t handle_ptr,
124 const std::vector<sycl::event> &depends);
130extern void init_sparse_gemv_dispatch_tables(
void);