SLATE 2024.05.31
Software for Linear Algebra Targeting Exascale
Loading...
Searching...
No Matches
symm: Symmetric matrix multiply

Functions

template<typename scalar_t >
void slate::tile::symm (Side side, scalar_t alpha, Tile< scalar_t > const &A, Tile< scalar_t > const &B, scalar_t beta, Tile< scalar_t > &C)
 Symmetric matrix multiply: \(C = \alpha A op(B) + \beta op(C)\) or \(C = \alpha op(B) A + \beta op(C)\), where \(A\) is symmetric.
 
template<typename scalar_t >
void slate::tile::symm (Side side, scalar_t alpha, Tile< scalar_t > const &&A, Tile< scalar_t > const &&B, scalar_t beta, Tile< scalar_t > &&C)
 Converts rvalue refs to lvalue refs.
 
template<typename scalar_t >
void slate::tile::symv (scalar_t alpha, Tile< scalar_t > const &&A, scalar_t const *x, scalar_t beta, scalar_t *y)
 Converts rvalue refs to lvalue refs.
 
template<typename scalar_t >
void slate::tile::hemv (scalar_t alpha, Tile< scalar_t > const &&A, scalar_t const *x, scalar_t beta, scalar_t *y)
 Converts rvalue refs to lvalue refs.
 

Detailed Description

Function Documentation

◆ symm()

template<typename scalar_t >
void slate::tile::symm ( Side  side,
scalar_t  alpha,
Tile< scalar_t > const &  A,
Tile< scalar_t > const &  B,
scalar_t  beta,
Tile< scalar_t > &  C 
)

Symmetric matrix multiply: \(C = \alpha A op(B) + \beta op(C)\) or \(C = \alpha op(B) A + \beta op(C)\), where \(A\) is symmetric.

Unlike most BLAS operations, here op(B) and op(C) must be both the same, either both NoTrans or both Trans.