mgcpp
A C++ Math Library Based on CUDA
Namespaces | Functions
cublas.hpp File Reference
#include <cstdlib>
#include <mgcpp/system/outcome.hpp>
#include <cublas_v2.h>
Include dependency graph for cublas.hpp:

Go to the source code of this file.

Namespaces

 mgcpp
 
 mgcpp::cublas
 

Functions

template<typename T >
outcome::result< void > mgcpp::cublas::dot (cublasHandle_t handle, size_t n, T const *x, size_t incx, T const *y, size_t incy, T *result) noexcept
 
template<typename T >
outcome::result< void > mgcpp::cublas::axpy (cublasHandle_t handle, size_t n, T const *alpha, T const *x, size_t incx, T *y, size_t incy) noexcept
 
template<typename VectorType , typename ScalarType >
outcome::result< void > mgcpp::cublas::scal (cublasHandle_t handle, size_t n, ScalarType const *alpha, VectorType *vec, size_t incvec) noexcept
 
template<typename T >
outcome::result< void > mgcpp::cublas::gemv (cublasHandle_t handle, cublasOperation_t trans, int m, int n, T const *alpha, T const *A, int lda, T const *x, int incx, T const *beta, T *y, int incy)
 
template<typename T >
outcome::result< void > mgcpp::cublas::ger (cublasHandle_t handle, size_t m, size_t n, T const *alpha, T const *x, size_t incx, T const *y, size_t incy, T *A, int lda)
 This function performs the rank-1 update. More...
 
template<typename T >
outcome::result< void > mgcpp::cublas::gemm (cublasHandle_t handle, cublasOperation_t transa, cublasOperation_t transb, size_t m, size_t n, size_t k, T const *alpha, T const *A, size_t lda, T const *B, size_t ldb, T const *beta, T *C, size_t ldc) noexcept
 
template<typename T >
outcome::result< void > mgcpp::cublas::gemm_batched (cublasHandle_t handle, cublasOperation_t transa, cublasOperation_t transb, size_t m, size_t n, size_t k, T const *alpha, T const *A, size_t lda, T const *B, size_t ldb, T const *beta, T *C, size_t ldc) noexcept
 
template<typename T >
outcome::result< void > mgcpp::cublas::geam (cublasHandle_t handle, cublasOperation_t transa, cublasOperation_t transb, size_t m, size_t n, const T *alpha, const T *A, size_t lda, const T *beta, const T *B, size_t ldb, T *C, size_t ldc) noexcept