StageConfig

Trait StageConfig 

Source
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§

Source

type TmmConfig: TileConfig

Underlying Tile matmul config

Required Methods§

Source

fn to_tmm_config(self) -> Self::TmmConfig

Convert itself to the underlying tile matmul config

Source

fn stage_line_size(&self, ident: Ident) -> u32

Returns the line size for the given ident

Source

fn tiling_dimensions(&self, ident: Ident) -> TilingDimensions

Returns the [StageTiling] for the given ident

Source

fn matrix_layout(&self, ident: Ident) -> MatrixLayout

Returns the MatrixLayout for the given ident

Source

fn num_planes(&self) -> u32

Returns the number of planes in the cube

Source

fn plane_dim(&self) -> u32

Returns the size of the plane dimension

Source

fn tile_count(&self) -> &MatmulSize

Source

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.

Implementors§