Trait AccumulatorLoader

Source
pub trait AccumulatorLoader<MP: MatmulPrecision>:
    CubeType
    + 'static
    + Send
    + Sync {
    // Required methods
    fn fill_stage<G: GlobalConfig>(this: &mut Self, config: G);
    fn load<Tile: TileMatmul<MP>>(
        this: &mut Self,
        acc: &mut Tile::Accumulator,
        nth_tile: u32,
        config: Tile::Config,
    );
    fn __expand_fill_stage<G: GlobalConfig>(
        scope: &mut Scope,
        this: <Self as CubeType>::ExpandType,
        config: G,
    ) -> <() as CubeType>::ExpandType;
    fn __expand_load<Tile: TileMatmul<MP>>(
        scope: &mut Scope,
        this: <Self as CubeType>::ExpandType,
        acc: <Tile::Accumulator as CubeType>::ExpandType,
        nth_tile: <u32 as CubeType>::ExpandType,
        config: Tile::Config,
    ) -> <() as CubeType>::ExpandType;
}
Expand description

Loads an accumulator with pre-defined data

Required Methods§

Source

fn fill_stage<G: GlobalConfig>(this: &mut Self, config: G)

Source

fn load<Tile: TileMatmul<MP>>( this: &mut Self, acc: &mut Tile::Accumulator, nth_tile: u32, config: Tile::Config, )

Load accumulator for nth_tile. Should call either zero_accumulator or fill_accumulator for the underlying tile.

Source

fn __expand_fill_stage<G: GlobalConfig>( scope: &mut Scope, this: <Self as CubeType>::ExpandType, config: G, ) -> <() as CubeType>::ExpandType

Source

fn __expand_load<Tile: TileMatmul<MP>>( scope: &mut Scope, this: <Self as CubeType>::ExpandType, acc: <Tile::Accumulator as CubeType>::ExpandType, nth_tile: <u32 as CubeType>::ExpandType, config: Tile::Config, ) -> <() as CubeType>::ExpandType

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§