GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ > Struct Template Reference#
ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ > Struct Template Reference
#include <grouped_convolution_utils.hpp>
Classes | |
| struct | FixedGemmParams |
Static Public Attributes | |
| static constexpr bool | EnableSplitImage = EnableSplitImage_ |
| static constexpr index_t | NumGroupsToMerge = NumGroupsToMerge_ |
| static constexpr index_t | NDimSpatial = NDimSpatial_ |
| static constexpr ConvolutionSpecialization | ConvSpecialization = ConvSpecialization_ |
| static constexpr ck_tile::index_t | VectorSizeA = VectorSizeA_ |
| static constexpr ck_tile::index_t | VectorSizeB = VectorSizeB_ |
| static constexpr ck_tile::index_t | VectorSizeC = VectorSizeC_ |
| static constexpr ck_tile::index_t | NumDTensor = DsLayout::size() |
Member Typedef Documentation
◆ AsLayoutBwdData
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::AsLayoutBwdData = ck_tile::tensor_layout::gemm::RowMajor |
◆ AsLayoutBwdWeight
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::AsLayoutBwdWeight = ck_tile::tensor_layout::gemm::ColumnMajor |
◆ AsLayoutFwd
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::AsLayoutFwd = ck_tile::tensor_layout::gemm::RowMajor |
◆ BsLayoutBwdData
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::BsLayoutBwdData = ck_tile::tensor_layout::gemm::RowMajor |
◆ BsLayoutBwdWeight
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::BsLayoutBwdWeight = ck_tile::tensor_layout::gemm::RowMajor |
◆ BsLayoutFwd
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::BsLayoutFwd = ck_tile::tensor_layout::gemm::ColumnMajor |
◆ CLayoutBwdData
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::CLayoutBwdData = ck_tile::tensor_layout::gemm::RowMajor |
◆ CLayoutBwdWeight
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::CLayoutBwdWeight = ck_tile::tensor_layout::gemm::RowMajor |
◆ CLayoutFwd
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::CLayoutFwd = ck_tile::tensor_layout::gemm::RowMajor |
◆ DsLayout
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::DsLayout = DsLayout_ |
◆ GroupedConvImplicitGemmTraitsBwdData
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
template<ck_tile::index_t NumWaveGroups = 1>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::GroupedConvImplicitGemmTraitsBwdData |
Initial value:
TileGemmTraits<true,
true,
true,
NumWaveGroups>
ck_tile::tensor_layout::gemm::RowMajor CLayoutBwdData
Definition grouped_convolution_utils.hpp:108
ck_tile::tensor_layout::gemm::RowMajor AsLayoutBwdData
Definition grouped_convolution_utils.hpp:106
ck_tile::tensor_layout::gemm::RowMajor BsLayoutBwdData
Definition grouped_convolution_utils.hpp:107
Definition tile_gemm_traits.hpp:18
◆ GroupedConvImplicitGemmTraitsBwdWeight
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
template<ck_tile::index_t NumWaveGroups = 1>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::GroupedConvImplicitGemmTraitsBwdWeight |
Initial value:
TileGemmTraits<true,
true,
true,
NumWaveGroups>
ck_tile::tensor_layout::gemm::RowMajor BsLayoutBwdWeight
Definition grouped_convolution_utils.hpp:111
ck_tile::tensor_layout::gemm::ColumnMajor AsLayoutBwdWeight
Definition grouped_convolution_utils.hpp:110
ck_tile::tensor_layout::gemm::RowMajor CLayoutBwdWeight
Definition grouped_convolution_utils.hpp:112
◆ GroupedConvImplicitGemmTraitsFwd
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
template<ck_tile::index_t NumWaveGroups = 1>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::GroupedConvImplicitGemmTraitsFwd |
◆ ImplicitGemmDsLayout
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::ImplicitGemmDsLayout = decltype(generate_implicit_gemm_layout()) |
◆ InLayout
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::InLayout = InLayout_ |
◆ OutLayout
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::OutLayout = OutLayout_ |
◆ WeiLayout
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
| using ck_tile::GroupedConvTraits< NDimSpatial_, ConvSpecialization_, InLayout_, WeiLayout_, DsLayout_, OutLayout_, VectorSizeA_, VectorSizeB_, VectorSizeC_, NumGroupsToMerge_, EnableSplitImage_ >::WeiLayout = WeiLayout_ |
Member Data Documentation
◆ ConvSpecialization
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
|
staticconstexpr |
◆ EnableSplitImage
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
|
staticconstexpr |
◆ NDimSpatial
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
|
staticconstexpr |
◆ NumDTensor
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
|
staticconstexpr |
◆ NumGroupsToMerge
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
|
staticconstexpr |
◆ VectorSizeA
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
|
staticconstexpr |
◆ VectorSizeB
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
|
staticconstexpr |
◆ VectorSizeC
template<index_t NDimSpatial_, ConvolutionSpecialization ConvSpecialization_, typename InLayout_, typename WeiLayout_, typename DsLayout_, typename OutLayout_, index_t VectorSizeA_ = 1, index_t VectorSizeB_ = 1, index_t VectorSizeC_ = 1, index_t NumGroupsToMerge_ = 1, bool EnableSplitImage_ = false>
|
staticconstexpr |
The documentation for this struct was generated from the following file: