Cutlass CUDA Templates for Linear Algebra Subroutines and Solvers

Public Types | List of all members
cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ > Struct Template Reference

`#include <igemm_epilogue.h>`

Inheritance diagram for cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >:

## Public Types
typedef GemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ > | Base
| The base class. More...
typedef IgemmConfig_ | IgemmConfig
| The config. More...
typedef Base::Scalar | Scalar
| The scalar type of the epilogue. More...
typedef Base::Iterations | Iterations
| The iterations. More...
typedef Base::Delta | Delta
| The iterations strides. More...
typedef Base::GlobalLoadTileTraits | GlobalLoadTileTraits
| The traits class for the iterator. More...
typedef GemmGlobalIteratorCd< GlobalLoadTileTraits > | GlobalLoadIteratorC
| The iterator to store to shared memory. More...
typedef GlobalLoadIteratorC::Fragment | GlobalFragmentC
| The fragment that needs to be produced by the load iterator. More...
typedef IgemmGlobalLoadTransformer< GlobalFragmentC, Scalar >::Transformer | GlobalTransformerC
| The transformer from loaded data to math fragment. More...
typedef Base::GlobalStoreTileTraits | GlobalStoreTileTraits
| The traits class for the iterator. More...
typedef GemmGlobalIteratorCd< GlobalStoreTileTraits > | GlobalStoreIteratorD
| The iterator to store to shared memory. More...
typedef GlobalStoreIteratorD::Fragment | GlobalFragmentD
| The fragment that needs to be passed to that store iterator. More...
typedef IgemmGlobalStoreTransformer< Scalar, GlobalFragmentD >::Transformer | GlobalTransformerD
| The transformer from accumulators to shared memory fragments. More...
typedef Base::SharedStoreTileTraits | SharedStoreTileTraits
| The traits class for the shared iterator to store D to shared memory. More...
typedef TileStoreIterator< SharedStoreTileTraits, typename SharedStoreTileTraits::Scalar, IteratorAdvance::kH, MemorySpace::kGlobal > | SharedStoreIteratorD
| The shared iterator to store D to shared memory. More...
typedef SharedStoreIteratorD::Fragment | SharedStoreFragmentD
| The fragment that needs to be passed to that store iterator. More...
typedef IgemmSharedStoreTransformer< typename IgemmConfig::Accumulators::Element, SharedStoreFragmentD >::Transformer | SharedStoreTransformerD
| The transformer from accumulators to shared memory fragments. More...
typedef Base::SharedLoadTileTraits | SharedLoadTileTraits
| The traits class for the shared iterator to load D from shared memory. More...
typedef TileLoadIterator< SharedLoadTileTraits, typename SharedLoadTileTraits::Scalar, IteratorAdvance::kH, MemorySpace::kShared > | SharedLoadIteratorD
| The shared iterator to load D from shared memory. More...
Public Types inherited from cutlass::gemm::GemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >
typedef EpilogueFunctor_::Scalar | Scalar
| The scalar. More...
typedef IgemmConfig_ ::OutputTile | OutputTile
| The output tile. More...
typedef Shape< 1, IgemmConfig_ ::MultiplyAdd::AccumulatorsPerThread::kH/IgemmConfig_ ::kAccumulatorsPerLdsB, IgemmConfig_ ::kAccumulatorsPerLdsB > | Iterations
| The number of iterations in the epilogue. More...
typedef Shape< 0, IgemmConfig_ ::kAccumulatorsPerLdsB *(IgemmConfig_ ::Warps::kH *IgemmConfig_ ::MultiplyAdd::ThreadsPerWarp::kH - 1), 0 > | Delta
typedef EpilogueFunctor_ | Functor
| The functor to do the math in the epilogue. More...
typedef GemmSharedStoreTileDTraits< typename Functor::ScalarAccum, typename IgemmConfig_ ::OutputTile, typename IgemmConfig_ ::Warps, typename IgemmConfig_ ::MultiplyAdd::ThreadsPerWarp, IgemmConfig_ ::kScalarsPerStsD, 128/sizeof(typename IgemmConfig_ ::ScalarD)/IgemmConfig_ ::kScalarsPerStsD/2 *IgemmConfig_ ::kScalarsPerStsD > | SharedStoreTileTraits
| The traits class to build the iterator to store to shared memory for D. More...
typedef TileStoreIterator< SharedStoreTileTraits, typename SharedStoreTileTraits::Scalar, IteratorAdvance::kH, MemorySpace::kShared > | SharedStoreIteratorD
| The iterator to store D to shared memory. More...
typedef Copy< typename SharedStoreIteratorD::Fragment > | SharedStoreTransformerD
| The shared store transformer for D. More...
typedef GemmSharedLoadTileDTraits< typename Functor::ScalarAccum, typename IgemmConfig_ ::OutputTile, typename IgemmConfig_ ::Warps, typename IgemmConfig_ ::MultiplyAdd::ThreadsPerWarp, IgemmConfig_ ::OutputTile::kH/ShapeCount< Iterations >::kCount, IgemmConfig_ ::kScalarsPerLdsD, SharedStoreTileTraits::kSkew > | SharedLoadTileTraits
| The traits class to build the iterator to load from shared memory for D. More...
typedef TileLoadIterator< SharedLoadTileTraits, typename SharedLoadTileTraits::Scalar, IteratorAdvance::kH, MemorySpace::kShared > | SharedLoadIteratorD
| The iterator to load D from shared memory. More...
typedef SharedLoadStream< SharedLoadIteratorD > | SharedLoadStreamD
| The stream to load D. More...
typedef GemmGlobalTileCdTraits< typename IgemmConfig_ ::ScalarC const, Shape< 1, IgemmConfig_ ::OutputTile::kH/ShapeCount< Iterations >::kCount, IgemmConfig_ ::OutputTile::kW >, Shape< 1, ShapeCount< typename IgemmConfig_ ::Warps >::kCount, IgemmConfig_ ::kWarpSize >, Iterations::kW, IgemmConfig_ ::kScalarsPerLdgC > | GlobalLoadTileTraits
| The traits class to build the iterator to load data from global memory for C^N. More...
typedef GemmGlobalIteratorCd< GlobalLoadTileTraits, Index_ > | GlobalLoadIteratorC
| The iterator to load C. More...
typedef Copy< typename GlobalLoadIteratorC::Fragment > | GlobalTransformerC
| The transformer for C. More...
typedef GemmGlobalTileCdTraits< typename IgemmConfig_ ::ScalarD, Shape< 1, IgemmConfig_ ::OutputTile::kH/ShapeCount< Iterations >::kCount, IgemmConfig_ ::OutputTile::kW >, Shape< 1, ShapeCount< typename IgemmConfig_ ::Warps >::kCount, IgemmConfig_ ::kWarpSize >, Iterations::kW, IgemmConfig_ ::kScalarsPerStgD > | GlobalStoreTileTraits
| The traits class to build the iterator to store data to global memory for D^N. More...
typedef GemmGlobalIteratorCd< GlobalStoreTileTraits, Index_ > | GlobalStoreIteratorD
| The iterator to store D. More...
typedef Copy< typename GlobalStoreIteratorD::Fragment > | GlobalTransformerD
| The transformer for D. More...

## Member Typedef Documentation

## ◆ Base

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef GemmEpilogueTraitsHelper<IgemmConfig_, EpilogueFunctor_, Index_> cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::Base

## ◆ Delta

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef Base::Delta cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::Delta

## ◆ GlobalFragmentC

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef GlobalLoadIteratorC::Fragment cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::GlobalFragmentC

## ◆ GlobalFragmentD

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef GlobalStoreIteratorD::Fragment cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::GlobalFragmentD

## ◆ GlobalLoadIteratorC

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef GemmGlobalIteratorCd<GlobalLoadTileTraits> cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::GlobalLoadIteratorC

## ◆ GlobalLoadTileTraits

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef Base::GlobalLoadTileTraits cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::GlobalLoadTileTraits

## ◆ GlobalStoreIteratorD

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef GemmGlobalIteratorCd<GlobalStoreTileTraits> cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::GlobalStoreIteratorD

## ◆ GlobalStoreTileTraits

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef Base::GlobalStoreTileTraits cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::GlobalStoreTileTraits

## ◆ GlobalTransformerC

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef IgemmGlobalLoadTransformer<GlobalFragmentC, Scalar>::Transformer cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::GlobalTransformerC

## ◆ GlobalTransformerD

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef IgemmGlobalStoreTransformer<Scalar, GlobalFragmentD>::Transformer cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::GlobalTransformerD

## ◆ IgemmConfig

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef IgemmConfig_ cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::IgemmConfig

## ◆ Iterations

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef Base::Iterations cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::Iterations

## ◆ Scalar

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef Base::Scalar cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::Scalar

## ◆ SharedLoadIteratorD

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef TileLoadIterator<SharedLoadTileTraits, typename SharedLoadTileTraits::Scalar, IteratorAdvance::kH, MemorySpace::kShared> cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::SharedLoadIteratorD

## ◆ SharedLoadTileTraits

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef Base::SharedLoadTileTraits cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::SharedLoadTileTraits

## ◆ SharedStoreFragmentD

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef SharedStoreIteratorD::Fragment cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::SharedStoreFragmentD

## ◆ SharedStoreIteratorD

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef TileStoreIterator<SharedStoreTileTraits, typename SharedStoreTileTraits::Scalar, IteratorAdvance::kH, MemorySpace::kGlobal> cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::SharedStoreIteratorD

## ◆ SharedStoreTileTraits

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef Base::SharedStoreTileTraits cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::SharedStoreTileTraits

## ◆ SharedStoreTransformerD

template<typename IgemmConfig_ , typename EpilogueFunctor_ , typename Index_ >

typedef IgemmSharedStoreTransformer<typename IgemmConfig::Accumulators::Element, SharedStoreFragmentD>::Transformer cutlass::gemm::IgemmEpilogueTraitsHelper< IgemmConfig_, EpilogueFunctor_, Index_ >::SharedStoreTransformerD

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

- igemm_epilogue.h