7 #ifndef _MGCPP_CUDA_LIBS_CUBLAS_HPP_ 8 #define _MGCPP_CUDA_LIBS_CUBLAS_HPP_ 14 #include <cublas_v2.h> 35 size_t incy) noexcept;
37 template <
typename VectorType,
typename ScalarType>
40 ScalarType
const* alpha,
42 size_t incvec) noexcept;
66 cublasOperation_t
trans,
95 cublasOperation_t transa,
96 cublasOperation_t transb,
107 size_t ldc) noexcept;
109 template <
typename T>
111 cublasOperation_t transa,
112 cublasOperation_t transb,
123 size_t ldc) noexcept;
127 template <
typename T>
129 cublasOperation_t transa,
130 cublasOperation_t transb,
140 size_t ldc) noexcept;
outcome::result< void > scal(cublasHandle_t handle, size_t n, ScalarType const *alpha, VectorType *vec, size_t incvec) noexcept
outcome::result< void > 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
Definition: adapter_base.hpp:12
outcome::result< void > 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
outcome::result< void > 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
outcome::result< void > 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.
outcome::result< void > 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)
dmat_trans_expr< Expr > trans(dmat_expr< Expr > const &expr) noexcept
BOOST_OUTCOME_V2_NAMESPACE::std_result< R > result
Definition: outcome.hpp:8
outcome::result< void > dot(cublasHandle_t handle, size_t n, T const *x, size_t incx, T const *y, size_t incy, T *result) noexcept
outcome::result< void > axpy(cublasHandle_t handle, size_t n, T const *alpha, T const *x, size_t incx, T *y, size_t incy) noexcept