TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ > Struct Template Reference#
ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ > Struct Template Reference
#include <tile_fmha_shape.hpp>
Public Types | |
| using | BlockTile = remove_cvref_t<BlockTile_> |
| using | Gemm0BlockWarps = remove_cvref_t<Gemm0BlockWarps_> |
| using | Gemm0WarpTile = remove_cvref_t<Gemm0WarpTile_> |
| using | Gemm1BlockWarps = remove_cvref_t<Gemm1BlockWarps_> |
| using | Gemm1WarpTile = remove_cvref_t<Gemm1WarpTile_> |
| using | Gemm2BlockWarps = remove_cvref_t<Gemm2BlockWarps_> |
| using | Gemm2WarpTile = remove_cvref_t<Gemm2WarpTile_> |
| using | Gemm3BlockWarps = remove_cvref_t<Gemm3BlockWarps_> |
| using | Gemm3WarpTile = remove_cvref_t<Gemm3WarpTile_> |
| using | Gemm4BlockWarps = remove_cvref_t<Gemm4BlockWarps_> |
| using | Gemm4WarpTile = remove_cvref_t<Gemm4WarpTile_> |
Static Public Attributes | |
| static constexpr index_t | NumWarps |
| static constexpr index_t | kM0 = BlockTile::at(number<0>{}) |
| static constexpr index_t | kN0 = BlockTile::at(number<1>{}) |
| static constexpr index_t | kK0 |
| static constexpr index_t | kK1 |
| static constexpr index_t | kK2 |
| static constexpr index_t | kK3 |
| static constexpr index_t | kK4 = BlockTile::at(number<6>{}) |
| static constexpr index_t | kQKHeaddim |
| static constexpr index_t | kVHeaddim = BlockTile::at(number<8>{}) |
| static constexpr index_t | kMaxSeqLenQ = kMaxSeqLenQ_ |
Member Typedef Documentation
◆ BlockTile
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
| using ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ >::BlockTile = remove_cvref_t<BlockTile_> |
◆ Gemm0BlockWarps
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
| using ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ >::Gemm0BlockWarps = remove_cvref_t<Gemm0BlockWarps_> |
◆ Gemm0WarpTile
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
| using ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ >::Gemm0WarpTile = remove_cvref_t<Gemm0WarpTile_> |
◆ Gemm1BlockWarps
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
| using ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ >::Gemm1BlockWarps = remove_cvref_t<Gemm1BlockWarps_> |
◆ Gemm1WarpTile
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
| using ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ >::Gemm1WarpTile = remove_cvref_t<Gemm1WarpTile_> |
◆ Gemm2BlockWarps
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
| using ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ >::Gemm2BlockWarps = remove_cvref_t<Gemm2BlockWarps_> |
◆ Gemm2WarpTile
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
| using ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ >::Gemm2WarpTile = remove_cvref_t<Gemm2WarpTile_> |
◆ Gemm3BlockWarps
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
| using ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ >::Gemm3BlockWarps = remove_cvref_t<Gemm3BlockWarps_> |
◆ Gemm3WarpTile
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
| using ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ >::Gemm3WarpTile = remove_cvref_t<Gemm3WarpTile_> |
◆ Gemm4BlockWarps
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
| using ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ >::Gemm4BlockWarps = remove_cvref_t<Gemm4BlockWarps_> |
◆ Gemm4WarpTile
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
| using ck_tile::TileFmhaBwdShape< BlockTile_, Gemm0BlockWarps_, Gemm0WarpTile_, Gemm1BlockWarps_, Gemm1WarpTile_, Gemm2BlockWarps_, Gemm2WarpTile_, Gemm3BlockWarps_, Gemm3WarpTile_, Gemm4BlockWarps_, Gemm4WarpTile_, kMaxSeqLenQ_ >::Gemm4WarpTile = remove_cvref_t<Gemm4WarpTile_> |
Member Data Documentation
◆ kK0
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
|
staticconstexpr |
Initial value:
=
BlockTile::at(number<2>{})
◆ kK1
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
|
staticconstexpr |
Initial value:
=
BlockTile::at(number<3>{})
◆ kK2
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
|
staticconstexpr |
Initial value:
=
BlockTile::at(number<4>{})
◆ kK3
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
|
staticconstexpr |
Initial value:
=
BlockTile::at(number<5>{})
◆ kK4
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
|
staticconstexpr |
◆ kM0
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
|
staticconstexpr |
◆ kMaxSeqLenQ
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
|
staticconstexpr |
◆ kN0
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
|
staticconstexpr |
◆ kQKHeaddim
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
|
staticconstexpr |
Initial value:
=
BlockTile::at(number<7>{})
◆ kVHeaddim
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
|
staticconstexpr |
◆ NumWarps
template<typename BlockTile_, typename Gemm0BlockWarps_, typename Gemm0WarpTile_, typename Gemm1BlockWarps_, typename Gemm1WarpTile_, typename Gemm2BlockWarps_, typename Gemm2WarpTile_, typename Gemm3BlockWarps_, typename Gemm3WarpTile_, typename Gemm4BlockWarps_, typename Gemm4WarpTile_, index_t kMaxSeqLenQ_ = 0>
|
staticconstexpr |
Initial value:
=
CK_TILE_HOST_DEVICE constexpr index_t reduce_on_sequence(Seq, Reduce f, number< Init >)
Definition tile/core/container/sequence.hpp:982
remove_cvref_t< Gemm0BlockWarps_ > Gemm0BlockWarps
Definition tile_fmha_shape.hpp:84
Definition tile/core/numeric/math.hpp:98
The documentation for this struct was generated from the following file: