SuperLU Distributed 9.0.0
gpu3d
cublas_cusolver_wrappers.hpp File Reference
#include <cublas_v2.h>
Include dependency graph for cublas_cusolver_wrappers.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

template<typename Ftype >
cusolverStatus_t myCusolverGetrf (cusolverDnHandle_t handle, int m, int n, Ftype *A, int lda, Ftype *Workspace, int *devIpiv, int *devInfo)
 
template<>
cusolverStatus_t myCusolverGetrf< double > (cusolverDnHandle_t handle, int m, int n, double *A, int lda, double *Workspace, int *devIpiv, int *devInfo)
 
template<>
cusolverStatus_t myCusolverGetrf< float > (cusolverDnHandle_t handle, int m, int n, float *A, int lda, float *Workspace, int *devIpiv, int *devInfo)
 
template<>
cusolverStatus_t myCusolverGetrf< cuComplex > (cusolverDnHandle_t handle, int m, int n, cuComplex *A, int lda, cuComplex *Workspace, int *devIpiv, int *devInfo)
 
template<>
cusolverStatus_t myCusolverGetrf< cuDoubleComplex > (cusolverDnHandle_t handle, int m, int n, cuDoubleComplex *A, int lda, cuDoubleComplex *Workspace, int *devIpiv, int *devInfo)
 
template<typename Ftype >
cublasStatus_t myCublasTrsm (cublasHandle_t handle, cublasSideMode_t side, cublasFillMode_t uplo, cublasOperation_t trans, cublasDiagType_t diag, int m, int n, const Ftype *alpha, const Ftype *A, int lda, Ftype *B, int ldb)
 
template<>
cublasStatus_t myCublasTrsm< double > (cublasHandle_t handle, cublasSideMode_t side, cublasFillMode_t uplo, cublasOperation_t trans, cublasDiagType_t diag, int m, int n, const double *alpha, const double *A, int lda, double *B, int ldb)
 
template<>
cublasStatus_t myCublasTrsm< float > (cublasHandle_t handle, cublasSideMode_t side, cublasFillMode_t uplo, cublasOperation_t trans, cublasDiagType_t diag, int m, int n, const float *alpha, const float *A, int lda, float *B, int ldb)
 
template<>
cublasStatus_t myCublasTrsm< cuComplex > (cublasHandle_t handle, cublasSideMode_t side, cublasFillMode_t uplo, cublasOperation_t trans, cublasDiagType_t diag, int m, int n, const cuComplex *alpha, const cuComplex *A, int lda, cuComplex *B, int ldb)
 
template<>
cublasStatus_t myCublasTrsm< cuDoubleComplex > (cublasHandle_t handle, cublasSideMode_t side, cublasFillMode_t uplo, cublasOperation_t trans, cublasDiagType_t diag, int m, int n, const cuDoubleComplex *alpha, const cuDoubleComplex *A, int lda, cuDoubleComplex *B, int ldb)
 
template<typename Ftype >
cublasStatus_t myCublasScal (cublasHandle_t handle, int n, const Ftype *alpha, Ftype *x, int incx)
 
template<typename Ftype >
cublasStatus_t myCublasAxpy (cublasHandle_t handle, int n, const Ftype *alpha, const Ftype *x, int incx, Ftype *y, int incy)
 
template<>
cublasStatus_t myCublasScal< double > (cublasHandle_t handle, int n, const double *alpha, double *x, int incx)
 
template<>
cublasStatus_t myCublasScal< float > (cublasHandle_t handle, int n, const float *alpha, float *x, int incx)
 
template<>
cublasStatus_t myCublasAxpy< double > (cublasHandle_t handle, int n, const double *alpha, const double *x, int incx, double *y, int incy)
 
template<>
cublasStatus_t myCublasAxpy< float > (cublasHandle_t handle, int n, const float *alpha, const float *x, int incx, float *y, int incy)
 
template<>
cublasStatus_t myCublasScal< cuComplex > (cublasHandle_t handle, int n, const cuComplex *alpha, cuComplex *x, int incx)
 
template<>
cublasStatus_t myCublasScal< cuDoubleComplex > (cublasHandle_t handle, int n, const cuDoubleComplex *alpha, cuDoubleComplex *x, int incx)
 
template<>
cublasStatus_t myCublasAxpy< cuComplex > (cublasHandle_t handle, int n, const cuComplex *alpha, const cuComplex *x, int incx, cuComplex *y, int incy)
 
template<>
cublasStatus_t myCublasAxpy< cuDoubleComplex > (cublasHandle_t handle, int n, const cuDoubleComplex *alpha, const cuDoubleComplex *x, int incx, cuDoubleComplex *y, int incy)
 
template<typename Ftype >
cublasStatus_t myCublasGemm (cublasHandle_t handle, cublasOperation_t transa, cublasOperation_t transb, int m, int n, int k, const Ftype *alpha, const Ftype *A, int lda, const Ftype *B, int ldb, const Ftype *beta, Ftype *C, int ldc)
 
template<>
cublasStatus_t myCublasGemm< double > (cublasHandle_t handle, cublasOperation_t transa, cublasOperation_t transb, int m, int n, int k, const double *alpha, const double *A, int lda, const double *B, int ldb, const double *beta, double *C, int ldc)
 
template<>
cublasStatus_t myCublasGemm< float > (cublasHandle_t handle, cublasOperation_t transa, cublasOperation_t transb, int m, int n, int k, const float *alpha, const float *A, int lda, const float *B, int ldb, const float *beta, float *C, int ldc)
 
template<>
cublasStatus_t myCublasGemm< cuComplex > (cublasHandle_t handle, cublasOperation_t transa, cublasOperation_t transb, int m, int n, int k, const cuComplex *alpha, const cuComplex *A, int lda, const cuComplex *B, int ldb, const cuComplex *beta, cuComplex *C, int ldc)
 
template<>
cublasStatus_t myCublasGemm< cuDoubleComplex > (cublasHandle_t handle, cublasOperation_t transa, cublasOperation_t transb, int m, int n, int k, const cuDoubleComplex *alpha, const cuDoubleComplex *A, int lda, const cuDoubleComplex *B, int ldb, const cuDoubleComplex *beta, cuDoubleComplex *C, int ldc)
 
template<>
cublasStatus_t myCublasGemm< doublecomplex > (cublasHandle_t handle, cublasOperation_t transa, cublasOperation_t transb, int m, int n, int k, const doublecomplex *alpha, const doublecomplex *A, int lda, const doublecomplex *B, int ldb, const doublecomplex *beta, doublecomplex *C, int ldc)
 
template<>
cusolverStatus_t myCusolverGetrf< doublecomplex > (cusolverDnHandle_t handle, int m, int n, doublecomplex *A, int lda, doublecomplex *Workspace, int *devIpiv, int *devInfo)
 
template<>
cublasStatus_t myCublasTrsm< doublecomplex > (cublasHandle_t handle, cublasSideMode_t side, cublasFillMode_t uplo, cublasOperation_t trans, cublasDiagType_t diag, int m, int n, const doublecomplex *alpha, const doublecomplex *A, int lda, doublecomplex *B, int ldb)
 
template<>
cublasStatus_t myCublasScal< doublecomplex > (cublasHandle_t handle, int n, const doublecomplex *alpha, doublecomplex *x, int incx)
 
template<>
cublasStatus_t myCublasAxpy< doublecomplex > (cublasHandle_t handle, int n, const doublecomplex *alpha, const doublecomplex *x, int incx, doublecomplex *y, int incy)
 

Function Documentation

◆ myCublasAxpy()

template<typename Ftype >
cublasStatus_t myCublasAxpy ( cublasHandle_t  handle,
int  n,
const Ftype *  alpha,
const Ftype *  x,
int  incx,
Ftype *  y,
int  incy 
)

◆ myCublasAxpy< cuComplex >()

template<>
cublasStatus_t myCublasAxpy< cuComplex > ( cublasHandle_t  handle,
int  n,
const cuComplex *  alpha,
const cuComplex *  x,
int  incx,
cuComplex *  y,
int  incy 
)

◆ myCublasAxpy< cuDoubleComplex >()

template<>
cublasStatus_t myCublasAxpy< cuDoubleComplex > ( cublasHandle_t  handle,
int  n,
const cuDoubleComplex *  alpha,
const cuDoubleComplex *  x,
int  incx,
cuDoubleComplex *  y,
int  incy 
)

◆ myCublasAxpy< double >()

template<>
cublasStatus_t myCublasAxpy< double > ( cublasHandle_t  handle,
int  n,
const double *  alpha,
const double *  x,
int  incx,
double *  y,
int  incy 
)

◆ myCublasAxpy< doublecomplex >()

template<>
cublasStatus_t myCublasAxpy< doublecomplex > ( cublasHandle_t  handle,
int  n,
const doublecomplex alpha,
const doublecomplex x,
int  incx,
doublecomplex y,
int  incy 
)

◆ myCublasAxpy< float >()

template<>
cublasStatus_t myCublasAxpy< float > ( cublasHandle_t  handle,
int  n,
const float *  alpha,
const float *  x,
int  incx,
float *  y,
int  incy 
)

◆ myCublasGemm()

template<typename Ftype >
cublasStatus_t myCublasGemm ( cublasHandle_t  handle,
cublasOperation_t  transa,
cublasOperation_t  transb,
int  m,
int  n,
int  k,
const Ftype *  alpha,
const Ftype *  A,
int  lda,
const Ftype *  B,
int  ldb,
const Ftype *  beta,
Ftype *  C,
int  ldc 
)

◆ myCublasGemm< cuComplex >()

template<>
cublasStatus_t myCublasGemm< cuComplex > ( cublasHandle_t  handle,
cublasOperation_t  transa,
cublasOperation_t  transb,
int  m,
int  n,
int  k,
const cuComplex *  alpha,
const cuComplex *  A,
int  lda,
const cuComplex *  B,
int  ldb,
const cuComplex *  beta,
cuComplex *  C,
int  ldc 
)

◆ myCublasGemm< cuDoubleComplex >()

template<>
cublasStatus_t myCublasGemm< cuDoubleComplex > ( cublasHandle_t  handle,
cublasOperation_t  transa,
cublasOperation_t  transb,
int  m,
int  n,
int  k,
const cuDoubleComplex *  alpha,
const cuDoubleComplex *  A,
int  lda,
const cuDoubleComplex *  B,
int  ldb,
const cuDoubleComplex *  beta,
cuDoubleComplex *  C,
int  ldc 
)

◆ myCublasGemm< double >()

template<>
cublasStatus_t myCublasGemm< double > ( cublasHandle_t  handle,
cublasOperation_t  transa,
cublasOperation_t  transb,
int  m,
int  n,
int  k,
const double *  alpha,
const double *  A,
int  lda,
const double *  B,
int  ldb,
const double *  beta,
double *  C,
int  ldc 
)

◆ myCublasGemm< doublecomplex >()

template<>
cublasStatus_t myCublasGemm< doublecomplex > ( cublasHandle_t  handle,
cublasOperation_t  transa,
cublasOperation_t  transb,
int  m,
int  n,
int  k,
const doublecomplex alpha,
const doublecomplex A,
int  lda,
const doublecomplex B,
int  ldb,
const doublecomplex beta,
doublecomplex C,
int  ldc 
)

◆ myCublasGemm< float >()

template<>
cublasStatus_t myCublasGemm< float > ( cublasHandle_t  handle,
cublasOperation_t  transa,
cublasOperation_t  transb,
int  m,
int  n,
int  k,
const float *  alpha,
const float *  A,
int  lda,
const float *  B,
int  ldb,
const float *  beta,
float *  C,
int  ldc 
)

◆ myCublasScal()

template<typename Ftype >
cublasStatus_t myCublasScal ( cublasHandle_t  handle,
int  n,
const Ftype *  alpha,
Ftype *  x,
int  incx 
)

◆ myCublasScal< cuComplex >()

template<>
cublasStatus_t myCublasScal< cuComplex > ( cublasHandle_t  handle,
int  n,
const cuComplex *  alpha,
cuComplex *  x,
int  incx 
)

◆ myCublasScal< cuDoubleComplex >()

template<>
cublasStatus_t myCublasScal< cuDoubleComplex > ( cublasHandle_t  handle,
int  n,
const cuDoubleComplex *  alpha,
cuDoubleComplex *  x,
int  incx 
)

◆ myCublasScal< double >()

template<>
cublasStatus_t myCublasScal< double > ( cublasHandle_t  handle,
int  n,
const double *  alpha,
double *  x,
int  incx 
)

◆ myCublasScal< doublecomplex >()

template<>
cublasStatus_t myCublasScal< doublecomplex > ( cublasHandle_t  handle,
int  n,
const doublecomplex alpha,
doublecomplex x,
int  incx 
)

◆ myCublasScal< float >()

template<>
cublasStatus_t myCublasScal< float > ( cublasHandle_t  handle,
int  n,
const float *  alpha,
float *  x,
int  incx 
)

◆ myCublasTrsm()

template<typename Ftype >
cublasStatus_t myCublasTrsm ( cublasHandle_t  handle,
cublasSideMode_t  side,
cublasFillMode_t  uplo,
cublasOperation_t  trans,
cublasDiagType_t  diag,
int  m,
int  n,
const Ftype *  alpha,
const Ftype *  A,
int  lda,
Ftype *  B,
int  ldb 
)

◆ myCublasTrsm< cuComplex >()

template<>
cublasStatus_t myCublasTrsm< cuComplex > ( cublasHandle_t  handle,
cublasSideMode_t  side,
cublasFillMode_t  uplo,
cublasOperation_t  trans,
cublasDiagType_t  diag,
int  m,
int  n,
const cuComplex *  alpha,
const cuComplex *  A,
int  lda,
cuComplex *  B,
int  ldb 
)

◆ myCublasTrsm< cuDoubleComplex >()

template<>
cublasStatus_t myCublasTrsm< cuDoubleComplex > ( cublasHandle_t  handle,
cublasSideMode_t  side,
cublasFillMode_t  uplo,
cublasOperation_t  trans,
cublasDiagType_t  diag,
int  m,
int  n,
const cuDoubleComplex *  alpha,
const cuDoubleComplex *  A,
int  lda,
cuDoubleComplex *  B,
int  ldb 
)

◆ myCublasTrsm< double >()

template<>
cublasStatus_t myCublasTrsm< double > ( cublasHandle_t  handle,
cublasSideMode_t  side,
cublasFillMode_t  uplo,
cublasOperation_t  trans,
cublasDiagType_t  diag,
int  m,
int  n,
const double *  alpha,
const double *  A,
int  lda,
double *  B,
int  ldb 
)

◆ myCublasTrsm< doublecomplex >()

template<>
cublasStatus_t myCublasTrsm< doublecomplex > ( cublasHandle_t  handle,
cublasSideMode_t  side,
cublasFillMode_t  uplo,
cublasOperation_t  trans,
cublasDiagType_t  diag,
int  m,
int  n,
const doublecomplex alpha,
const doublecomplex A,
int  lda,
doublecomplex B,
int  ldb 
)

◆ myCublasTrsm< float >()

template<>
cublasStatus_t myCublasTrsm< float > ( cublasHandle_t  handle,
cublasSideMode_t  side,
cublasFillMode_t  uplo,
cublasOperation_t  trans,
cublasDiagType_t  diag,
int  m,
int  n,
const float *  alpha,
const float *  A,
int  lda,
float *  B,
int  ldb 
)

◆ myCusolverGetrf()

template<typename Ftype >
cusolverStatus_t myCusolverGetrf ( cusolverDnHandle_t  handle,
int  m,
int  n,
Ftype *  A,
int  lda,
Ftype *  Workspace,
int *  devIpiv,
int *  devInfo 
)

◆ myCusolverGetrf< cuComplex >()

template<>
cusolverStatus_t myCusolverGetrf< cuComplex > ( cusolverDnHandle_t  handle,
int  m,
int  n,
cuComplex *  A,
int  lda,
cuComplex *  Workspace,
int *  devIpiv,
int *  devInfo 
)

◆ myCusolverGetrf< cuDoubleComplex >()

template<>
cusolverStatus_t myCusolverGetrf< cuDoubleComplex > ( cusolverDnHandle_t  handle,
int  m,
int  n,
cuDoubleComplex *  A,
int  lda,
cuDoubleComplex *  Workspace,
int *  devIpiv,
int *  devInfo 
)

◆ myCusolverGetrf< double >()

template<>
cusolverStatus_t myCusolverGetrf< double > ( cusolverDnHandle_t  handle,
int  m,
int  n,
double *  A,
int  lda,
double *  Workspace,
int *  devIpiv,
int *  devInfo 
)

◆ myCusolverGetrf< doublecomplex >()

template<>
cusolverStatus_t myCusolverGetrf< doublecomplex > ( cusolverDnHandle_t  handle,
int  m,
int  n,
doublecomplex A,
int  lda,
doublecomplex Workspace,
int *  devIpiv,
int *  devInfo 
)

◆ myCusolverGetrf< float >()

template<>
cusolverStatus_t myCusolverGetrf< float > ( cusolverDnHandle_t  handle,
int  m,
int  n,
float *  A,
int  lda,
float *  Workspace,
int *  devIpiv,
int *  devInfo 
)