CUTLASS
CUDA Templates for Linear Algebra Subroutines and Solvers
|
#include <linear_combination.h>
Classes | |
struct | Params |
Host-constructable parameters structure. More... | |
Public Types | |
using | ElementOutput = ElementOutput_ |
using | ElementAccumulator = ElementAccumulator_ |
using | ElementCompute = ElementCompute_ |
using | FragmentOutput = Array< ElementOutput, kCount > |
using | FragmentAccumulator = Array< ElementAccumulator, kCount > |
using | ComputeFragment = Array< ElementCompute, kCount > |
Public Member Functions | |
CUTLASS_HOST_DEVICE | LinearCombination (Params const ¶ms) |
Constructs the function object, possibly loading from pointers in host memory. More... | |
CUTLASS_HOST_DEVICE bool | is_source_needed () const |
Returns true if source is needed. More... | |
CUTLASS_HOST_DEVICE void | set_k_partition (int k_partition) |
Functionally required for serial reduction in the epilogue. More... | |
CUTLASS_HOST_DEVICE FragmentOutput | operator() (FragmentAccumulator const &accumulator, FragmentOutput const &source) const |
Computes linear scaling: D = alpha * accumulator + beta * source. More... | |
Static Public Attributes | |
static int const | kCount = Count |
static FloatRoundStyle const | kRound = Round |
Applies a linear combination operator to an array of elements.
D = alpha * accumulator + beta * source + uniform
using cutlass::epilogue::thread::LinearCombination< ElementOutput_, Count, ElementAccumulator_, ElementCompute_, Round >::ComputeFragment = Array<ElementCompute, kCount> |
using cutlass::epilogue::thread::LinearCombination< ElementOutput_, Count, ElementAccumulator_, ElementCompute_, Round >::ElementAccumulator = ElementAccumulator_ |
using cutlass::epilogue::thread::LinearCombination< ElementOutput_, Count, ElementAccumulator_, ElementCompute_, Round >::ElementCompute = ElementCompute_ |
using cutlass::epilogue::thread::LinearCombination< ElementOutput_, Count, ElementAccumulator_, ElementCompute_, Round >::ElementOutput = ElementOutput_ |
using cutlass::epilogue::thread::LinearCombination< ElementOutput_, Count, ElementAccumulator_, ElementCompute_, Round >::FragmentAccumulator = Array<ElementAccumulator, kCount> |
using cutlass::epilogue::thread::LinearCombination< ElementOutput_, Count, ElementAccumulator_, ElementCompute_, Round >::FragmentOutput = Array<ElementOutput, kCount> |
|
inline |
|
inline |
|
inline |
|
inline |
|
static |
|
static |