Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Functions
uni20::linalg::cublas Namespace Reference

Functions

template<uni20::cublas::CublasScalar Scalar, class OutputHandle , class LhsHandle , class RhsHandle >
requires std::convertible_to<OutputHandle, Scalar*> && std::convertible_to<LhsHandle, Scalar const*> && std::convertible_to<RhsHandle, Scalar const*>
void gemm (uni20::cublas::ExecutionLease &execution, blas::BlasWritableMatrix< Scalar, OutputHandle > output, Scalar alpha, blas::BlasReadableMatrix< Scalar, LhsHandle > lhs, blas::BlasReadableMatrix< Scalar, RhsHandle > rhs, Scalar beta)
 Run provider-ready column-major GEMM through cuBLAS.
 

Function Documentation

◆ gemm()

template<uni20::cublas::CublasScalar Scalar, class OutputHandle , class LhsHandle , class RhsHandle >
requires std::convertible_to<OutputHandle, Scalar*> && std::convertible_to<LhsHandle, Scalar const*> && std::convertible_to<RhsHandle, Scalar const*>
void uni20::linalg::cublas::gemm ( uni20::cublas::ExecutionLease &  execution,
blas::BlasWritableMatrix< Scalar, OutputHandle >  output,
Scalar  alpha,
blas::BlasReadableMatrix< Scalar, LhsHandle >  lhs,
blas::BlasReadableMatrix< Scalar, RhsHandle >  rhs,
Scalar  beta 
)

Run provider-ready column-major GEMM through cuBLAS.

Backend acceptance must be completed before acquiring execution. Unsupported transforms and invalid dimensions are logic errors here.