GemmTile1DPartitioner< BlockGemmShape_ > Struct Template Reference#
Public Types |
Public Member Functions |
Static Public Member Functions |
Static Public Attributes |
List of all members
ck_tile::GemmTile1DPartitioner< BlockGemmShape_ > Struct Template Reference
Class providing 1D WGP index mapping into 2D output C-tile space. More...
#include <gemm_tile_partitioner.hpp>
Public Types | |
| using | BlockGemmShape = remove_cvref_t<BlockGemmShape_> |
Public Member Functions | |
| CK_TILE_HOST_DEVICE | GemmTile1DPartitioner () noexcept=delete |
| CK_TILE_HOST_DEVICE | GemmTile1DPartitioner (index_t M, index_t N) noexcept |
| Construct a new GemmTile1DPartitioner object. | |
Static Public Member Functions | |
| static CK_TILE_HOST_DEVICE auto | GridSize (index_t M, index_t N) noexcept(noexcept(MPerBlock !=0 &&NPerBlock !=0)) -> index_t |
| Calculates GEMM kernel grid size. | |
| static CK_TILE_HOST_DEVICE auto | GetLoopNum (index_t K) noexcept -> index_t |
| Calculate number of loop iterations over GEMM's K dimension. | |
| static CK_TILE_DEVICE auto | GetOutputTileIndex (index_t blockIdx) noexcept -> const tuple< index_t, index_t > |
| Calculate workgroup 1D index mapping into 2D output C-tile space. | |
Static Public Attributes | |
| static constexpr index_t | MPerBlock = BlockGemmShape::kM |
| static constexpr index_t | NPerBlock = BlockGemmShape::kN |
| static constexpr index_t | KPerBlock = BlockGemmShape::kK |
Detailed Description
template<typename BlockGemmShape_>
struct ck_tile::GemmTile1DPartitioner< BlockGemmShape_ >
struct ck_tile::GemmTile1DPartitioner< BlockGemmShape_ >
Class providing 1D WGP index mapping into 2D output C-tile space.
- Template Parameters
-
BlockGemmShape_ A class providing basic GEMM parameters. TileGemmShape
Member Typedef Documentation
◆ BlockGemmShape
template<typename BlockGemmShape_>
| using ck_tile::GemmTile1DPartitioner< BlockGemmShape_ >::BlockGemmShape = remove_cvref_t<BlockGemmShape_> |
Constructor & Destructor Documentation
◆ GemmTile1DPartitioner() [1/2]
template<typename BlockGemmShape_>
|
deletenoexcept |
◆ GemmTile1DPartitioner() [2/2]
template<typename BlockGemmShape_>
|
inlinenoexcept |
Construct a new GemmTile1DPartitioner object.
- Parameters
-
M GEMM's M dimension. N GEMM's N dimension.
Member Function Documentation
◆ GetLoopNum()
template<typename BlockGemmShape_>
|
inlinestaticnoexcept |
Calculate number of loop iterations over GEMM's K dimension.
- Parameters
-
K GEMM's K dimension.
- Returns
- index_t The number of loop iterations over K dimension.
◆ GetOutputTileIndex()
template<typename BlockGemmShape_>
|
inlinestaticnoexcept |
Calculate workgroup 1D index mapping into 2D output C-tile space.
- Parameters
-
blockIdx WGP's index.
- Returns
- const tuple<index_t, index_t> Tuple containing 2D output C-tile index.
◆ GridSize()
template<typename BlockGemmShape_>
|
inlinestaticnoexcept |
Calculates GEMM kernel grid size.
- Parameters
-
M GEMM's M dimension. N GEMM's N dimension.
- Returns
- dim3 Structure holding grid's X,Y and Z dimensions.
Member Data Documentation
◆ KPerBlock
template<typename BlockGemmShape_>
|
staticconstexpr |
◆ MPerBlock
template<typename BlockGemmShape_>
|
staticconstexpr |
◆ NPerBlock
template<typename BlockGemmShape_>
|
staticconstexpr |
The documentation for this struct was generated from the following file: