41 template <
typename Tile_,
int kAccessSize_,
bool = (Tile_::kC < kAccessSize_)>
46 template <
typename Tile_,
int kAccessSize_>
49 static_assert(Tile_::kW >= kAccessSize_,
"The W dimension is too small");
51 static_assert(Tile_::kW % kAccessSize_ == 0,
"Not supported");
53 typedef Shape<Tile_::kD, Tile_::kH, Tile_::kW / kAccessSize_, kAccessSize_>
Tile;
57 template <
typename Tile_,
int kAccessSize_,
int kLdsPerAccess_,
bool = (Tile_::kC < (kAccessSize_ * kLdsPerAccess_))>
58 struct WmmaReshapeTile {
62 template <
typename Tile_,
int kAccessSize_,
int kLdsPerAccess_>
65 static_assert(Tile_::kW >= (kAccessSize_ * kLdsPerAccess_),
"The W dimension is too small");
67 static_assert(Tile_::kW % (kAccessSize_ * kLdsPerAccess_) == 0,
"Not supported");
69 typedef Shape<Tile_::kD, Tile_::kH, Tile_::kW / (kAccessSize_ * kLdsPerAccess_), (kAccessSize_ * kLdsPerAccess_)>
Tile;
Shape< Tile_::kD, Tile_::kH, Tile_::kW/(kAccessSize_ *kLdsPerAccess_),(kAccessSize_ *kLdsPerAccess_)> Tile
Definition: reshape_tile.h:65
Definition: reshape_tile.h:47
A Shape implementing Layout Concept describing the dimensions of a cube.
Definition: shape.h:64
Shape< Tile_::kD, Tile_::kH, Tile_::kW/kAccessSize_, kAccessSize_ > Tile
Definition: reshape_tile.h:49
Definition: reshape_tile.h:63
Defines Shape implementing the Layout concept for representing a 4D hypercube of objects.