Argument Struct Reference#
ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument Struct Reference
#include <device_reduce_threadwise_multi_d.hpp>
Inheritance diagram for ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument:
Public Member Functions | |
| Argument (const std::array< index_t, Rank > inLengths, const std::array< index_t, Rank > inStrides, const std::array< std::array< index_t, NumDstDim >, NumDTensor > DsLengths, const std::array< std::array< index_t, NumDstDim >, NumDTensor > DsStrides, const std::array< index_t, NumDstDim > outLengths, const std::array< index_t, NumDstDim > outStrides, const std::array< int, NumReduceDim > reduceDims, const InDataType *in_dev, const std::array< const void *, NumDTensor > ds_dev, OutDataType *out_dev, const InElementwiseOperation in_elementwise_op, const OutElementwiseOperation out_elementwise_op) | |
| Public Member Functions inherited from ck::tensor_operation::device::BaseArgument | |
| BaseArgument ()=default | |
| BaseArgument (const BaseArgument &)=default | |
| BaseArgument & | operator= (const BaseArgument &)=default |
| virtual | ~BaseArgument () |
Public Attributes | |
| std::array< index_t, Rank > | inLengths_ |
| std::array< index_t, Rank > | inStrides_ |
| std::array< std::array< index_t, NumDstDim >, NumDTensor > | DsLengths_ |
| std::array< std::array< index_t, NumDstDim >, NumDTensor > | DsStrides_ |
| std::array< index_t, NumDstDim > | outLengths_ |
| std::array< index_t, NumDstDim > | outStrides_ |
| const InDataType * | in_dev_ |
| OutDataType * | out_dev_ |
| DsGridPointer | p_ds_grid_ |
| InElementwiseOperation | in_elementwise_op_ |
| OutElementwiseOperation | out_elementwise_op_ |
| DsGridDesc_M | ds_grid_desc_m_ |
| index_t | invariant_lowest_length |
| index_t | reduce_lowest_length |
| long_index_t | invariant_total_length |
| long_index_t | reduce_total_length |
| int | numBlockTileIteration |
| size_t | gridSize |
| Public Attributes inherited from ck::tensor_operation::device::BaseArgument | |
| void * | p_workspace_ = nullptr |
Constructor & Destructor Documentation
◆ Argument()
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
|
inline |
Member Data Documentation
◆ ds_grid_desc_m_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| DsGridDesc_M ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::ds_grid_desc_m_ |
◆ DsLengths_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| std::array<std::array<index_t, NumDstDim>, NumDTensor> ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::DsLengths_ |
◆ DsStrides_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| std::array<std::array<index_t, NumDstDim>, NumDTensor> ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::DsStrides_ |
◆ gridSize
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| size_t ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::gridSize |
◆ in_dev_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| const InDataType* ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::in_dev_ |
◆ in_elementwise_op_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| InElementwiseOperation ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::in_elementwise_op_ |
◆ inLengths_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| std::array<index_t, Rank> ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::inLengths_ |
◆ inStrides_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| std::array<index_t, Rank> ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::inStrides_ |
◆ invariant_lowest_length
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| index_t ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::invariant_lowest_length |
◆ invariant_total_length
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| long_index_t ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::invariant_total_length |
◆ numBlockTileIteration
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| int ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::numBlockTileIteration |
◆ out_dev_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| OutDataType* ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::out_dev_ |
◆ out_elementwise_op_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| OutElementwiseOperation ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::out_elementwise_op_ |
◆ outLengths_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| std::array<index_t, NumDstDim> ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::outLengths_ |
◆ outStrides_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| std::array<index_t, NumDstDim> ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::outStrides_ |
◆ p_ds_grid_
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| DsGridPointer ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::p_ds_grid_ |
◆ reduce_lowest_length
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| index_t ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::reduce_lowest_length |
◆ reduce_total_length
template<typename InDataType, typename DsDataType, typename AccDataType, typename OutDataType, index_t Rank, index_t NumReduceDim, typename ReduceOperation, typename InElementwiseOperation, typename OutElementwiseOperation, index_t BlockSize, index_t MThreadSliceSize, index_t KThreadSliceSize, index_t InSrcVectorDim, index_t InSrcVectorSize, index_t OutDstVectorSize, typename DsVectorSizeSequence>
| long_index_t ck::tensor_operation::device::DeviceReduceThreadWiseMultiD< InDataType, DsDataType, AccDataType, OutDataType, Rank, NumReduceDim, ReduceOperation, InElementwiseOperation, OutElementwiseOperation, BlockSize, MThreadSliceSize, KThreadSliceSize, InSrcVectorDim, InSrcVectorSize, OutDstVectorSize, DsVectorSizeSequence >::Argument::reduce_total_length |
The documentation for this struct was generated from the following file: