1#ifndef CS_MATRIX_SPMV_CUDA_H
2#define CS_MATRIX_SPMV_CUDA_H
47#if defined(__CUDACC__)
66#if defined(__CUDACC__)
82cs_matrix_spmv_cuda_set_stream(cudaStream_t stream);
92extern "C" cudaStream_t
93cs_matrix_spmv_cuda_get_stream(
void);
135#if defined(HAVE_CUSPARSE)
150cs_matrix_spmv_cuda_csr_cusparse(
cs_matrix_t *matrix,
177#if defined(HAVE_CUSPARSE)
192cs_matrix_spmv_cuda_msr_cusparse(
cs_matrix_t *matrix,
220#if defined(HAVE_CUSPARSE)
241cs_matrix_spmv_cuda_msr_b_cusparse(
cs_matrix_t *matrix,
double cs_real_t
Floating-point value.
Definition: cs_defs.h:332
struct _cs_matrix_t cs_matrix_t
Definition: cs_matrix.h:108
void cs_matrix_spmv_cuda_msr_bb_cusparse(cs_matrix_t *matrix, bool exclude_diag, bool sync, cs_real_t d_x[], cs_real_t d_y[])
Matrix.vector product y = A.x with MSR matrix, block cuSPARSE version.
void cs_matrix_spmv_cuda_csr(cs_matrix_t *matrix, bool exclude_diag, bool sync, cs_real_t d_x[], cs_real_t d_y[])
Matrix.vector product y = A.x with CSR matrix, scalar CUDA version.
void cs_matrix_spmv_cuda_native(cs_matrix_t *matrix, bool exclude_diag, bool sync, cs_real_t d_x[], cs_real_t d_y[])
Matrix.vector product y = A.x with MSR matrix, scalar CUDA version.
void cs_matrix_spmv_cuda_finalize(void)
Finalize CUDA matrix API.
void cs_matrix_spmv_cuda_msr(cs_matrix_t *matrix, bool exclude_diag, bool sync, cs_real_t d_x[], cs_real_t d_y[])
Matrix.vector product y = A.x with MSR matrix, scalar CUDA version.
void cs_matrix_spmv_cuda_msr_b(cs_matrix_t *matrix, bool exclude_diag, bool sync, cs_real_t d_x[], cs_real_t d_y[])
Matrix.vector product y = A.x with MSR matrix, block diagonal CUDA version.