Cutlass
CUDA Templates for Linear Algebra Subroutines and Solvers
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
cutlass::gemm::LinearScaling< Scalar_, FragmentMultiplyAdd_ > Struct Template Reference

Functor to compute linear combination of fragments.

#include <linear_scaling.h>

Classes

struct  Params
 The parameters. More...
 

Public Types

typedef Scalar_ Scalar
 
typedef FragmentMultiplyAdd_ FragmentMultiplyAdd
 

Public Member Functions

CUTLASS_DEVICE LinearScaling (Params const &params)
 Ctor. More...
 
template<typename Fragment_ >
CUTLASS_DEVICE void evaluate (Fragment_ const &accum, Fragment_ &output)
 Evaluate the functor. More...
 
template<typename Fragment_ >
CUTLASS_DEVICE void evaluate (Fragment_ const &accum, Fragment_ const &old, Fragment_ &output)
 Evaluate the functor. More...
 

Public Attributes

Scalar alpha
 The alpha/beta scaling factors. More...
 
Scalar beta
 

Member Typedef Documentation

◆ FragmentMultiplyAdd

template<typename Scalar_, typename FragmentMultiplyAdd_ = FragmentMultiplyAdd<Scalar_>>
typedef FragmentMultiplyAdd_ cutlass::gemm::LinearScaling< Scalar_, FragmentMultiplyAdd_ >::FragmentMultiplyAdd

◆ Scalar

template<typename Scalar_, typename FragmentMultiplyAdd_ = FragmentMultiplyAdd<Scalar_>>
typedef Scalar_ cutlass::gemm::LinearScaling< Scalar_, FragmentMultiplyAdd_ >::Scalar

Constructor & Destructor Documentation

◆ LinearScaling()

template<typename Scalar_, typename FragmentMultiplyAdd_ = FragmentMultiplyAdd<Scalar_>>
CUTLASS_DEVICE cutlass::gemm::LinearScaling< Scalar_, FragmentMultiplyAdd_ >::LinearScaling ( Params const &  params)
inline

Member Function Documentation

◆ evaluate() [1/2]

template<typename Scalar_, typename FragmentMultiplyAdd_ = FragmentMultiplyAdd<Scalar_>>
template<typename Fragment_ >
CUTLASS_DEVICE void cutlass::gemm::LinearScaling< Scalar_, FragmentMultiplyAdd_ >::evaluate ( Fragment_ const &  accum,
Fragment_ &  output 
)
inline

◆ evaluate() [2/2]

template<typename Scalar_, typename FragmentMultiplyAdd_ = FragmentMultiplyAdd<Scalar_>>
template<typename Fragment_ >
CUTLASS_DEVICE void cutlass::gemm::LinearScaling< Scalar_, FragmentMultiplyAdd_ >::evaluate ( Fragment_ const &  accum,
Fragment_ const &  old,
Fragment_ &  output 
)
inline

Member Data Documentation

◆ alpha

template<typename Scalar_, typename FragmentMultiplyAdd_ = FragmentMultiplyAdd<Scalar_>>
Scalar cutlass::gemm::LinearScaling< Scalar_, FragmentMultiplyAdd_ >::alpha

◆ beta

template<typename Scalar_, typename FragmentMultiplyAdd_ = FragmentMultiplyAdd<Scalar_>>
Scalar cutlass::gemm::LinearScaling< Scalar_, FragmentMultiplyAdd_ >::beta

The documentation for this struct was generated from the following file: