DeviceNormalizationFwdImpl< XDataType, GammaDataType, BetaDataType, ComputeDataType, YDataType, SaveMeanInvStdDataType, YElementwiseOperation, Rank, NumReduceDim, BlockSize, MThreadClusterSize, KThreadClusterSize, MThreadSliceSize, KThreadSliceSize, XYSrcVectorDim, XSrcVectorSize, GammaSrcVectorDim, GammaSrcVectorSize, BetaSrcVectorDim, BetaSrcVectorSize, YDstVectorSize, SaveMeanInvStdDstVectorSize, UseWelford > Struct Template Reference#
Classes |
Public Types |
Public Member Functions |
Static Public Member Functions |
Static Public Attributes |
List of all members
ck::tensor_operation::device::DeviceNormalizationFwdImpl< XDataType, GammaDataType, BetaDataType, ComputeDataType, YDataType, SaveMeanInvStdDataType, YElementwiseOperation, Rank, NumReduceDim, BlockSize, MThreadClusterSize, KThreadClusterSize, MThreadSliceSize, KThreadSliceSize, XYSrcVectorDim, XSrcVectorSize, GammaSrcVectorDim, GammaSrcVectorSize, BetaSrcVectorDim, BetaSrcVectorSize, YDstVectorSize, SaveMeanInvStdDstVectorSize, UseWelford > Struct Template Reference
#include <device_normalization_fwd_impl.hpp>
Inheritance diagram for ck::tensor_operation::device::DeviceNormalizationFwdImpl< XDataType, GammaDataType, BetaDataType, ComputeDataType, YDataType, SaveMeanInvStdDataType, YElementwiseOperation, Rank, NumReduceDim, BlockSize, MThreadClusterSize, KThreadClusterSize, MThreadSliceSize, KThreadSliceSize, XYSrcVectorDim, XSrcVectorSize, GammaSrcVectorDim, GammaSrcVectorSize, BetaSrcVectorDim, BetaSrcVectorSize, YDstVectorSize, SaveMeanInvStdDstVectorSize, UseWelford >:
Classes | |
| struct | Argument |
| struct | Invoker |
Public Types | |
| using | PassThrough = tensor_operation::element_wise::PassThrough |
| using | GridDesc_M_K = decltype(MakeSrc2dDescriptor({1}, {1}, 1)) |
| using | GridDesc_M = decltype(MakeSaveMeanInvStdDescriptor_M({1}, {1})) |
Public Member Functions | |
| bool | IsSupportedArgument (const BaseArgument *p_arg) override |
| std::unique_ptr< BaseArgument > | MakeArgumentPointer (const std::vector< index_t > lengths, const std::vector< index_t > xStrides, const std::vector< index_t > gammaStrides, const std::vector< index_t > betaStrides, const std::vector< index_t > yStrides, const std::vector< index_t > saveMeanStrides, const std::vector< index_t > saveInvStdStrides, const std::vector< index_t > reduceDims, double epsilon, const void *p_x, const void *p_gamma, const void *p_beta, void *p_y, void *p_saveMean, void *p_saveInvStd, YElementwiseOperation y_elementwise_op) override |
| std::unique_ptr< BaseInvoker > | MakeInvokerPointer () override |
| std::string | GetTypeString () const override |
| Public Member Functions inherited from ck::tensor_operation::device::BaseOperator | |
| BaseOperator ()=default | |
| BaseOperator (const BaseOperator &)=default | |
| BaseOperator & | operator= (const BaseOperator &)=default |
| virtual std::string | GetInstanceString () const |
| virtual std::string | GetTypeIdName () const |
| virtual std::optional< std::string > | GetObjectName () const |
| virtual std::optional< std::string > | GetTemplateInfo () const |
| virtual std::string | GetTypeIdHashCode () const |
| virtual size_t | GetWorkSpaceSize (const BaseArgument *) const |
| virtual void | SetWorkSpacePointer (BaseArgument *p_arg, void *p_workspace, const StreamConfig &=StreamConfig{}) const |
| virtual | ~BaseOperator () |
Static Public Member Functions | |
| static auto | MakeSrc2dDescriptor (const std::vector< index_t > &inLengths, const std::vector< index_t > &inStrides, int numBlockTileIteration) |
| static auto | MakeSaveMeanInvStdDescriptor_M (const std::vector< index_t > &lengths, const std::vector< index_t > &strides) |
Static Public Attributes | |
| static constexpr index_t | NumInvariantDim = Rank - NumReduceDim |
| static constexpr index_t | M_BlockTileSize = MThreadClusterSize * MThreadSliceSize |
| static constexpr index_t | K_BlockTileSize = KThreadClusterSize * KThreadSliceSize |
| static constexpr bool | reduceAllDim = (NumInvariantDim == 0) |
Member Typedef Documentation
◆ GridDesc_M
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
| using ck::tensor_operation::device::DeviceNormalizationFwdImpl< XDataType, GammaDataType, BetaDataType, ComputeDataType, YDataType, SaveMeanInvStdDataType, YElementwiseOperation, Rank, NumReduceDim, BlockSize, MThreadClusterSize, KThreadClusterSize, MThreadSliceSize, KThreadSliceSize, XYSrcVectorDim, XSrcVectorSize, GammaSrcVectorDim, GammaSrcVectorSize, BetaSrcVectorDim, BetaSrcVectorSize, YDstVectorSize, SaveMeanInvStdDstVectorSize, UseWelford >::GridDesc_M = decltype(MakeSaveMeanInvStdDescriptor_M({1}, {1})) |
◆ GridDesc_M_K
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
| using ck::tensor_operation::device::DeviceNormalizationFwdImpl< XDataType, GammaDataType, BetaDataType, ComputeDataType, YDataType, SaveMeanInvStdDataType, YElementwiseOperation, Rank, NumReduceDim, BlockSize, MThreadClusterSize, KThreadClusterSize, MThreadSliceSize, KThreadSliceSize, XYSrcVectorDim, XSrcVectorSize, GammaSrcVectorDim, GammaSrcVectorSize, BetaSrcVectorDim, BetaSrcVectorSize, YDstVectorSize, SaveMeanInvStdDstVectorSize, UseWelford >::GridDesc_M_K = decltype(MakeSrc2dDescriptor({1}, {1}, 1)) |
◆ PassThrough
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
| using ck::tensor_operation::device::DeviceNormalizationFwdImpl< XDataType, GammaDataType, BetaDataType, ComputeDataType, YDataType, SaveMeanInvStdDataType, YElementwiseOperation, Rank, NumReduceDim, BlockSize, MThreadClusterSize, KThreadClusterSize, MThreadSliceSize, KThreadSliceSize, XYSrcVectorDim, XSrcVectorSize, GammaSrcVectorDim, GammaSrcVectorSize, BetaSrcVectorDim, BetaSrcVectorSize, YDstVectorSize, SaveMeanInvStdDstVectorSize, UseWelford >::PassThrough = tensor_operation::element_wise::PassThrough |
Member Function Documentation
◆ GetTypeString()
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
|
inlineoverridevirtual |
Reimplemented from ck::tensor_operation::device::BaseOperator.
◆ IsSupportedArgument()
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
|
inlineoverridevirtual |
Reimplemented from ck::tensor_operation::device::BaseOperator.
◆ MakeArgumentPointer()
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
|
inlineoverridevirtual |
◆ MakeInvokerPointer()
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
|
inlineoverridevirtual |
◆ MakeSaveMeanInvStdDescriptor_M()
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
|
inlinestatic |
◆ MakeSrc2dDescriptor()
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
|
inlinestatic |
Member Data Documentation
◆ K_BlockTileSize
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
|
staticconstexpr |
◆ M_BlockTileSize
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
|
staticconstexpr |
◆ NumInvariantDim
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
|
staticconstexpr |
◆ reduceAllDim
template<typename XDataType, typename GammaDataType, typename BetaDataType, typename ComputeDataType, typename YDataType, typename SaveMeanInvStdDataType, typename YElementwiseOperation, index_t Rank, index_t NumReduceDim, index_t BlockSize, index_t MThreadClusterSize, index_t KThreadClusterSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t XYSrcVectorDim, index_t XSrcVectorSize, index_t GammaSrcVectorDim, index_t GammaSrcVectorSize, index_t BetaSrcVectorDim, index_t BetaSrcVectorSize, index_t YDstVectorSize, index_t SaveMeanInvStdDstVectorSize, bool UseWelford = true>
|
staticconstexpr |
The documentation for this struct was generated from the following file: