COMPASS  5.0.0
End-to-end AO simulation tool using GPU acceleration
carma_cublas.h File Reference

this file provides the cublas features to CarmaObj More...

#include <cuda_runtime_api.h>
#include <cublas_v2.h>
#include <string>
Include dependency graph for carma_cublas.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define carma_checkCublasStatus(status)   __carma_checkCublasStatus(status, __LINE__, __FILE__)
 

Functions

cublasStatus_t __carma_checkCublasStatus (cublasStatus_t status, int line, std::string file)
 
cublasStatus_t carma_initCublas (cublasHandle_t *cublas_handle)
 
cublasStatus_t carma_shutdownCublas (cublasHandle_t cublas_handle)
 
cublasOperation_t carma_char2cublas_operation (char operation)
 
template<class T_data >
int carma_where_amax (cublasHandle_t cublas_handle, int n, const T_data *vect, int incx)
 
template<class T_data >
int carma_where_amin (cublasHandle_t cublas_handle, int n, const T_data *vect, int incx)
 
template<class T_data >
T_data carma_getasum (cublasHandle_t cublas_handle, int n, const T_data *vect, int incx)
 
template<class T_data >
cublasStatus_t carma_axpy (cublasHandle_t cublas_handle, int n, const T_data alpha, const T_data *vectx, int incx, T_data *vecty, int incy)
 
template<class T_data >
T_data carma_dot (cublasHandle_t cublas_handle, int n, T_data *vectx, int incx, T_data *vecty, int incy)
 
template<class T_data >
T_data carma_nrm2 (cublasHandle_t cublas_handle, int n, T_data *vect, int incx)
 
template<class T_data >
cublasStatus_t carma_rot (cublasHandle_t cublas_handle, int n, T_data *vectx, int incx, T_data *vecty, int incy, T_data sc, T_data ss)
 
template<class T_data >
cublasStatus_t carma_scal (cublasHandle_t cublas_handle, int n, T_data alpha, T_data *vectx, int incx)
 
template<class T_data >
cublasStatus_t carma_swap (cublasHandle_t cublas_handle, int n, T_data *vectx, int incx, T_data *vecty, int incy)
 
template<class T_data >
cublasStatus_t carma_copy (cublasHandle_t cublas_handle, int n, const T_data *vectx, int incx, T_data *vecty, int incy)
 
template<class T_data >
cublasStatus_t carma_gemv (cublasHandle_t cublas_handle, char trans, int m, int n, T_data alpha, T_data *matA, int lda, T_data *vectx, int incx, T_data beta, T_data *vecty, int incy)
 
template<class T_data >
cublasStatus_t carma_symv (cublasHandle_t cublas_handle, char uplo, int n, T_data alpha, T_data *matA, int lda, T_data *vectx, int incx, T_data beta, T_data *vecty, int incy)
 
template<class T_data >
cublasStatus_t carma_ger (cublasHandle_t cublas_handle, int m, int n, T_data alpha, T_data *vectx, int incx, T_data *vecty, int incy, T_data *matA, int lda)
 
template<class T_data >
cublasStatus_t carma_gemm (cublasHandle_t cublas_handle, char transa, char transb, int m, int n, int k, T_data alpha, T_data *matA, int lda, T_data *matB, int ldb, T_data beta, T_data *matC, int ldc)
 
template<class T_data >
cublasStatus_t carma_symm (cublasHandle_t cublas_handle, char side, char uplo, int m, int n, T_data alpha, T_data *matA, int lda, T_data *matB, int ldb, T_data beta, T_data *matC, int ldc)
 
template<class T_data >
cublasStatus_t carma_syrk (cublasHandle_t cublas_handle, char uplo, char transa, int n, int k, T_data alpha, T_data *matA, int lda, T_data beta, T_data *matC, int ldc)
 
template<class T_data >
cublasStatus_t carma_syrkx (cublasHandle_t cublas_handle, char uplo, char transa, int n, int k, T_data alpha, T_data *matA, int lda, T_data *matB, int ldb, T_data beta, T_data *matC, int ldc)
 
template<class T_data >
cublasStatus_t carma_geam (cublasHandle_t cublas_handle, char transa, char transb, int m, int n, T_data alpha, T_data *matA, int lda, T_data beta, T_data *matB, int ldb, T_data *matC, int ldc)
 
template<class T_data >
cublasStatus_t carma_dgmm (cublasHandle_t cublas_handle, char side, int m, int n, const T_data *matA, int lda, const T_data *vectx, int incx, T_data *matC, int ldc)
 

Detailed Description

this file provides the cublas features to CarmaObj

Author
COMPASS Team https://github.com/ANR-COMPASS
Version
5.0.0
Date
2011/01/28

Definition in file carma_cublas.h.

Macro Definition Documentation

◆ carma_checkCublasStatus

#define carma_checkCublasStatus (   status)    __carma_checkCublasStatus(status, __LINE__, __FILE__)

Definition at line 51 of file carma_cublas.h.

Function Documentation

◆ __carma_checkCublasStatus()

cublasStatus_t __carma_checkCublasStatus ( cublasStatus_t  status,
int  line,
std::string  file 
)

◆ carma_axpy()

template<class T_data >
cublasStatus_t carma_axpy ( cublasHandle_t  cublas_handle,
int  n,
const T_data  alpha,
const T_data *  vectx,
int  incx,
T_data *  vecty,
int  incy 
)

◆ carma_char2cublas_operation()

cublasOperation_t carma_char2cublas_operation ( char  operation)

◆ carma_copy()

template<class T_data >
cublasStatus_t carma_copy ( cublasHandle_t  cublas_handle,
int  n,
const T_data *  vectx,
int  incx,
T_data *  vecty,
int  incy 
)

◆ carma_dgmm()

template<class T_data >
cublasStatus_t carma_dgmm ( cublasHandle_t  cublas_handle,
char  side,
int  m,
int  n,
const T_data *  matA,
int  lda,
const T_data *  vectx,
int  incx,
T_data *  matC,
int  ldc 
)

◆ carma_dot()

template<class T_data >
T_data carma_dot ( cublasHandle_t  cublas_handle,
int  n,
T_data *  vectx,
int  incx,
T_data *  vecty,
int  incy 
)

◆ carma_geam()

template<class T_data >
cublasStatus_t carma_geam ( cublasHandle_t  cublas_handle,
char  transa,
char  transb,
int  m,
int  n,
T_data  alpha,
T_data *  matA,
int  lda,
T_data  beta,
T_data *  matB,
int  ldb,
T_data *  matC,
int  ldc 
)

◆ carma_gemm()

template<class T_data >
cublasStatus_t carma_gemm ( cublasHandle_t  cublas_handle,
char  transa,
char  transb,
int  m,
int  n,
int  k,
T_data  alpha,
T_data *  matA,
int  lda,
T_data *  matB,
int  ldb,
T_data  beta,
T_data *  matC,
int  ldc 
)

◆ carma_gemv()

template<class T_data >
cublasStatus_t carma_gemv ( cublasHandle_t  cublas_handle,
char  trans,
int  m,
int  n,
T_data  alpha,
T_data *  matA,
int  lda,
T_data *  vectx,
int  incx,
T_data  beta,
T_data *  vecty,
int  incy 
)

◆ carma_ger()

template<class T_data >
cublasStatus_t carma_ger ( cublasHandle_t  cublas_handle,
int  m,
int  n,
T_data  alpha,
T_data *  vectx,
int  incx,
T_data *  vecty,
int  incy,
T_data *  matA,
int  lda 
)

◆ carma_getasum()

template<class T_data >
T_data carma_getasum ( cublasHandle_t  cublas_handle,
int  n,
const T_data *  vect,
int  incx 
)

◆ carma_initCublas()

cublasStatus_t carma_initCublas ( cublasHandle_t *  cublas_handle)

◆ carma_nrm2()

template<class T_data >
T_data carma_nrm2 ( cublasHandle_t  cublas_handle,
int  n,
T_data *  vect,
int  incx 
)

◆ carma_rot()

template<class T_data >
cublasStatus_t carma_rot ( cublasHandle_t  cublas_handle,
int  n,
T_data *  vectx,
int  incx,
T_data *  vecty,
int  incy,
T_data  sc,
T_data  ss 
)

◆ carma_scal()

template<class T_data >
cublasStatus_t carma_scal ( cublasHandle_t  cublas_handle,
int  n,
T_data  alpha,
T_data *  vectx,
int  incx 
)

◆ carma_shutdownCublas()

cublasStatus_t carma_shutdownCublas ( cublasHandle_t  cublas_handle)

◆ carma_swap()

template<class T_data >
cublasStatus_t carma_swap ( cublasHandle_t  cublas_handle,
int  n,
T_data *  vectx,
int  incx,
T_data *  vecty,
int  incy 
)

◆ carma_symm()

template<class T_data >
cublasStatus_t carma_symm ( cublasHandle_t  cublas_handle,
char  side,
char  uplo,
int  m,
int  n,
T_data  alpha,
T_data *  matA,
int  lda,
T_data *  matB,
int  ldb,
T_data  beta,
T_data *  matC,
int  ldc 
)

◆ carma_symv()

template<class T_data >
cublasStatus_t carma_symv ( cublasHandle_t  cublas_handle,
char  uplo,
int  n,
T_data  alpha,
T_data *  matA,
int  lda,
T_data *  vectx,
int  incx,
T_data  beta,
T_data *  vecty,
int  incy 
)

◆ carma_syrk()

template<class T_data >
cublasStatus_t carma_syrk ( cublasHandle_t  cublas_handle,
char  uplo,
char  transa,
int  n,
int  k,
T_data  alpha,
T_data *  matA,
int  lda,
T_data  beta,
T_data *  matC,
int  ldc 
)

◆ carma_syrkx()

template<class T_data >
cublasStatus_t carma_syrkx ( cublasHandle_t  cublas_handle,
char  uplo,
char  transa,
int  n,
int  k,
T_data  alpha,
T_data *  matA,
int  lda,
T_data *  matB,
int  ldb,
T_data  beta,
T_data *  matC,
int  ldc 
)

◆ carma_where_amax()

template<class T_data >
int carma_where_amax ( cublasHandle_t  cublas_handle,
int  n,
const T_data *  vect,
int  incx 
)

◆ carma_where_amin()

template<class T_data >
int carma_where_amin ( cublasHandle_t  cublas_handle,
int  n,
const T_data *  vect,
int  incx 
)