BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ > Struct Template Reference

BatchedTransposeProblem&lt; InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ &gt; Struct Template Reference#

Composable Kernel: ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ > Struct Template Reference
ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ > Struct Template Reference

#include <batched_transpose_problem.hpp>

Public Types

using InputType = remove_cvref_t< InputType_ >
 

Static Public Attributes

static constexpr index_t kMPerThread = ThreadTile::at(number<0>{})
 
static constexpr index_t kNPerThread = ThreadTile::at(number<1>{})
 
static constexpr index_t kMPerWarp = WarpTile::at(number<0>{})
 
static constexpr index_t kNPerWarp = WarpTile::at(number<1>{})
 
static constexpr index_t kMThreadPerWarp = kMPerWarp / kMPerThread
 
static constexpr index_t kNThreadPerWarp = kNPerWarp / kNPerThread
 
static constexpr index_t kMPerBlock = BlockTile::at(number<0>{})
 
static constexpr index_t kNPerBlock = BlockTile::at(number<1>{})
 
static constexpr index_t kMWarpPerBlock = kMPerBlock / kMPerWarp
 
static constexpr index_t kNWarpPerBlock = kNPerBlock / kNPerWarp
 
static constexpr index_t kBlockSize
 
static constexpr bool kPadM = kPadM_
 
static constexpr bool kPadN = kPadN_
 
static constexpr index_t AlignmentM = kPadM ? VectorLoadSize / sizeof(InputType) : 1
 
static constexpr index_t AlignmentN = kPadN ? VectorLoadSize / sizeof(InputType) : 1
 

Member Typedef Documentation

◆ InputType

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
using ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::InputType = remove_cvref_t<InputType_>

Member Data Documentation

◆ AlignmentM

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::AlignmentM = kPadM ? VectorLoadSize / sizeof(InputType) : 1
staticconstexpr

◆ AlignmentN

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::AlignmentN = kPadN ? VectorLoadSize / sizeof(InputType) : 1
staticconstexpr

◆ kBlockSize

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kBlockSize
staticconstexpr
Initial value:
=
static constexpr index_t kMThreadPerWarp
Definition: batched_transpose_problem.hpp:30
static constexpr index_t kNThreadPerWarp
Definition: batched_transpose_problem.hpp:31
static constexpr index_t kNWarpPerBlock
Definition: batched_transpose_problem.hpp:37
static constexpr index_t kMWarpPerBlock
Definition: batched_transpose_problem.hpp:36

◆ kMPerBlock

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kMPerBlock = BlockTile::at(number<0>{})
staticconstexpr

◆ kMPerThread

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kMPerThread = ThreadTile::at(number<0>{})
staticconstexpr

◆ kMPerWarp

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kMPerWarp = WarpTile::at(number<0>{})
staticconstexpr

◆ kMThreadPerWarp

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kMThreadPerWarp = kMPerWarp / kMPerThread
staticconstexpr

◆ kMWarpPerBlock

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kMWarpPerBlock = kMPerBlock / kMPerWarp
staticconstexpr

◆ kNPerBlock

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kNPerBlock = BlockTile::at(number<1>{})
staticconstexpr

◆ kNPerThread

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kNPerThread = ThreadTile::at(number<1>{})
staticconstexpr

◆ kNPerWarp

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kNPerWarp = WarpTile::at(number<1>{})
staticconstexpr

◆ kNThreadPerWarp

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kNThreadPerWarp = kNPerWarp / kNPerThread
staticconstexpr

◆ kNWarpPerBlock

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr index_t ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kNWarpPerBlock = kNPerBlock / kNPerWarp
staticconstexpr

◆ kPadM

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr bool ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kPadM = kPadM_
staticconstexpr

◆ kPadN

template<typename InputType_ , typename BlockTile , typename WarpTile , typename ThreadTile , bool kPadM_ = true, bool kPadN_ = true>
constexpr bool ck_tile::BatchedTransposeProblem< InputType_, BlockTile, WarpTile, ThreadTile, kPadM_, kPadN_ >::kPadN = kPadN_
staticconstexpr

The documentation for this struct was generated from the following file:
  • /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/docs-6.4.3/include/ck_tile/ops/batched_transpose/pipeline/batched_transpose_problem.hpp