Trait GlobalWriter

Source
pub trait GlobalWriter<EO: Numeric>:
    CubeType
    + 'static
    + Send
    + Sync {
    // Required methods
    fn write<G: GlobalConfig>(
        this: &mut Self,
        slice: Slice<Line<EO>>,
        tile_m: u32,
        tile_n: u32,
        config: G,
    );
    fn __expand_write<G: GlobalConfig>(
        scope: &mut Scope,
        this: <Self as CubeType>::ExpandType,
        slice: <Slice<Line<EO>> as CubeType>::ExpandType,
        tile_m: <u32 as CubeType>::ExpandType,
        tile_n: <u32 as CubeType>::ExpandType,
        config: G,
    ) -> <() as CubeType>::ExpandType;
}
Expand description

Responsible of writing the accumulated stage matmul output to global memory

Required Methods§

Source

fn write<G: GlobalConfig>( this: &mut Self, slice: Slice<Line<EO>>, tile_m: u32, tile_n: u32, config: G, )

Writes the given slice to global memory, at a position that depends on plane and accumulator indexes.

Source

fn __expand_write<G: GlobalConfig>( scope: &mut Scope, this: <Self as CubeType>::ExpandType, slice: <Slice<Line<EO>> as CubeType>::ExpandType, tile_m: <u32 as CubeType>::ExpandType, tile_n: <u32 as CubeType>::ExpandType, config: G, ) -> <() 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§