COMPASS  5.0.0
End-to-end AO simulation tool using GPU acceleration
carma_sparse_obj.h File Reference
#include <cusparse_v2.h>
#include "carma_obj.h"
Include dependency graph for carma_sparse_obj.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  CarmaSparseHostObj< T_data >
 this class provides wrappers to the generic carma sparse host object More...
 
class  CarmaSparseObj
 this class provides wrappers to the generic carma sparse object More...
 

Typedefs

typedef void * magma_d_sparse_matrix
 
typedef void * magma_s_sparse_matrix
 

Functions

template<class T_data >
cusparseStatus_t carma_gemv (cusparseHandle_t handle, char op_A, T_data alpha, CarmaSparseObj< T_data > *A, T_data *x, T_data beta, T_data *y)
 
template<class T_data >
cusparseStatus_t carma_gemm (cusparseHandle_t handle, char op_A, T_data alpha, CarmaSparseObj< T_data > *A, CarmaObj< T_data > *B, T_data beta, CarmaObj< T_data > *C)
 
template<class T_data >
cusparseStatus_t carma_gemm (cusparseHandle_t handle, char op_A, char op_B, CarmaSparseObj< T_data > *A, CarmaSparseObj< T_data > *B, CarmaSparseObj< T_data > *C)
 
template<class T_data >
cusparseStatus_t carma_csr2dense (CarmaSparseObj< T_data > *src, T_data *dest)
 
template<class T_data >
cusparseStatus_t carma_csr2bsr (CarmaSparseObj< T_data > *src, int block_dim, CarmaSparseObj< T_data > *dest)
 
template<class T_data >
cusparseStatus_t carma_bsr2csr (CarmaSparseObj< T_data > *src, CarmaSparseObj< T_data > *dest)
 
template<class T_data >
int carma_kgemv (CarmaSparseObj< T_data > *A, T_data alpha, const T_data *__restrict x, T_data beta, T_data *y)
 

Typedef Documentation

◆ magma_d_sparse_matrix

typedef void* magma_d_sparse_matrix

Definition at line 52 of file carma_sparse_obj.h.

◆ magma_s_sparse_matrix

typedef void* magma_s_sparse_matrix

Definition at line 53 of file carma_sparse_obj.h.

Function Documentation

◆ carma_bsr2csr()

template<class T_data >
cusparseStatus_t carma_bsr2csr ( CarmaSparseObj< T_data > *  src,
CarmaSparseObj< T_data > *  dest 
)

◆ carma_csr2bsr()

template<class T_data >
cusparseStatus_t carma_csr2bsr ( CarmaSparseObj< T_data > *  src,
int  block_dim,
CarmaSparseObj< T_data > *  dest 
)

◆ carma_csr2dense()

template<class T_data >
cusparseStatus_t carma_csr2dense ( CarmaSparseObj< T_data > *  src,
T_data *  dest 
)

◆ carma_gemm() [1/2]

template<class T_data >
cusparseStatus_t carma_gemm ( cusparseHandle_t  handle,
char  op_A,
char  op_B,
CarmaSparseObj< T_data > *  A,
CarmaSparseObj< T_data > *  B,
CarmaSparseObj< T_data > *  C 
)

◆ carma_gemm() [2/2]

template<class T_data >
cusparseStatus_t carma_gemm ( cusparseHandle_t  handle,
char  op_A,
T_data  alpha,
CarmaSparseObj< T_data > *  A,
CarmaObj< T_data > *  B,
T_data  beta,
CarmaObj< T_data > *  C 
)

◆ carma_gemv()

template<class T_data >
cusparseStatus_t carma_gemv ( cusparseHandle_t  handle,
char  op_A,
T_data  alpha,
CarmaSparseObj< T_data > *  A,
T_data *  x,
T_data  beta,
T_data *  y 
)

◆ carma_kgemv()

template<class T_data >
int carma_kgemv ( CarmaSparseObj< T_data > *  A,
T_data  alpha,
const T_data *__restrict  x,
T_data  beta,
T_data *  y 
)