| CUTLASS CUDA Templates for Linear Algebra Subroutines and Solvers

- Main Page
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Classes | Public Types | Public Member Functions | Static Public Attributes | List of all members
cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round > Class Template Reference

`#include <conversion_op.h>`

## Classes
struct | Params
| Host-constructable parameters structure. More...

## Public Types
using | ElementOutput = ElementOutput_
using | ElementAccumulator = ElementAccumulator_
using | ElementCompute = ElementAccumulator_
using | FragmentOutput = Array< ElementOutput, kCount >
using | FragmentAccumulator = Array< ElementAccumulator, kCount >
using | ComputeFragment = FragmentAccumulator

## Public Member Functions
CUTLASS_HOST_DEVICE | Convert (Params const &params=Params())
| Constructs the function object, possibly loading from pointers in host memory. More...
CUTLASS_HOST_DEVICE constexpr bool | is_source_needed () const
| Returns true if source is needed based on state of runtime arguments. More...
CUTLASS_HOST_DEVICE constexpr bool | is_source_ever_needed () const
CUTLASS_HOST_DEVICE FragmentOutput | operator() (FragmentAccumulator const &accumulator, FragmentOutput const &source, ElementCompute uniform=ElementCompute(0)) const
| Computes linear scaling: D = alpha * accumulator + beta * source. More...

## Static Public Attributes
static int const | kCount = Count
static FloatRoundStyle const | kRound = Round

## Detailed Description

### template<typename ElementOutput_, int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>
class cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >

Converts the result without other operations

## Member Typedef Documentation

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

using cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::ComputeFragment = FragmentAccumulator

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

using cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::ElementAccumulator = ElementAccumulator_

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

using cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::ElementCompute = ElementAccumulator_

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

using cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::ElementOutput = ElementOutput_

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

using cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::FragmentAccumulator = Array<ElementAccumulator, kCount>

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

using cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::FragmentOutput = Array<ElementOutput, kCount>

## Constructor & Destructor Documentation

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

CUTLASS_HOST_DEVICE cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::Convert | ( | Params const & | params = `Params()` | ) |
| inline

## Member Function Documentation

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

CUTLASS_HOST_DEVICE constexpr bool cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::is_source_ever_needed | ( |  | ) | const
| inline

Constexpr function to enable the compiler to optimize away the source loading if it is never needed.

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

CUTLASS_HOST_DEVICE constexpr bool cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::is_source_needed | ( |  | ) | const
| inline

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

CUTLASS_HOST_DEVICE FragmentOutput cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::operator() | ( | FragmentAccumulator const & | accumulator,
|  | FragmentOutput const & | source,
|  | ElementCompute | uniform = `ElementCompute(0)`
| ) |  | const
| inline

## Member Data Documentation

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

int const cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::kCount = Count
| static

template<typename ElementOutput_ , int Count, typename ElementAccumulator_ = ElementOutput_, FloatRoundStyle Round = FloatRoundStyle::round_to_nearest>

FloatRoundStyle const cutlass::epilogue::thread::Convert< ElementOutput_, Count, ElementAccumulator_, Round >::kRound = Round
| static

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

- conversion_op.h