SyncPartialLoadingStrategy

Trait SyncPartialLoadingStrategy 

Source
pub trait SyncPartialLoadingStrategy:
    'static
    + Send
    + Sync
    + Clone
    + LoadingValidation
    + LoadMaxRoundPlaneCount {
    type TilingLayout: TilingLayout;
    type Job<IP: MatrixPrecision>: LoadingJob<IP, Self::TilingLayout>;

    // Required methods
    fn new_job<IP: MatrixPrecision, G: GlobalConfig>(
        stage_index: u32,
        ident: MatmulIdent,
        line_size: u32,
        config: G,
    ) -> Self::Job<IP>;
    fn __expand_new_job<IP: MatrixPrecision, G: GlobalConfig>(
        scope: &mut Scope,
        stage_index: u32,
        ident: MatmulIdent,
        line_size: u32,
        config: G,
    ) -> <Self::Job<IP> as CubeType>::ExpandType;
}
Expand description

A strategy for synchronously loading partial stage memory

Required Associated Types§

Source

type TilingLayout: TilingLayout

The layout describing how data is tiled across the stage.

Source

type Job<IP: MatrixPrecision>: LoadingJob<IP, Self::TilingLayout>

The LoadingJob for this strategy.

Required Methods§

Source

fn new_job<IP: MatrixPrecision, G: GlobalConfig>( stage_index: u32, ident: MatmulIdent, line_size: u32, config: G, ) -> Self::Job<IP>

Returns the job with preliminary calculations done.

Source

fn __expand_new_job<IP: MatrixPrecision, G: GlobalConfig>( scope: &mut Scope, stage_index: u32, ident: MatmulIdent, line_size: u32, config: G, ) -> <Self::Job<IP> 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§