pub trait StageConfig: MatmulConfig {
type TmmConfig: TileConfig;
// Required methods
fn to_tmm_config(self) -> Self::TmmConfig;
fn stage_line_size(&self, ident: Ident) -> u32;
fn tiling_dimensions(&self, ident: Ident) -> TilingDimensions;
fn matrix_layout(&self, ident: Ident) -> MatrixLayout;
fn num_planes(&self) -> u32;
fn plane_dim(&self) -> u32;
fn tile_count(&self) -> &MatmulSize;
fn buffering(&self) -> StageBuffering;
}
Expand description
Configuration for the Stage matmul (SMM) level
Required Associated Types§
Sourcetype TmmConfig: TileConfig
type TmmConfig: TileConfig
Underlying Tile matmul config
Required Methods§
Sourcefn to_tmm_config(self) -> Self::TmmConfig
fn to_tmm_config(self) -> Self::TmmConfig
Convert itself to the underlying tile matmul config
Sourcefn stage_line_size(&self, ident: Ident) -> u32
fn stage_line_size(&self, ident: Ident) -> u32
Returns the line size for the given ident
Sourcefn tiling_dimensions(&self, ident: Ident) -> TilingDimensions
fn tiling_dimensions(&self, ident: Ident) -> TilingDimensions
Returns the [StageTiling] for the given ident
Sourcefn matrix_layout(&self, ident: Ident) -> MatrixLayout
fn matrix_layout(&self, ident: Ident) -> MatrixLayout
Returns the MatrixLayout for the given ident
Sourcefn num_planes(&self) -> u32
fn num_planes(&self) -> u32
Returns the number of planes in the cube
fn tile_count(&self) -> &MatmulSize
fn buffering(&self) -> StageBuffering
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.