pub struct SyncFullOrderedLoading {}
Expand description
Similar to sync_full_tilewise
, but includes additional validation checks.
This function operates only on the LHS (left-hand side).
- In the single-row case, behavior is similar to
tilewise
with row-major tiling order. However, it will explicitly fail if any plane does not load its entire row. - In the multi-row case, it too will fail if a plane does not load all its rows. Within each plane, the local tiling order is column-major.
Trait Implementations§
Source§impl Clone for SyncFullOrderedLoading
impl Clone for SyncFullOrderedLoading
Source§fn clone(&self) -> SyncFullOrderedLoading
fn clone(&self) -> SyncFullOrderedLoading
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl CubeType for SyncFullOrderedLoading
impl CubeType for SyncFullOrderedLoading
type ExpandType = SyncFullOrderedLoadingExpand
Source§fn into_mut(scope: &mut Scope, expand: Self::ExpandType) -> Self::ExpandType
fn into_mut(scope: &mut Scope, expand: Self::ExpandType) -> Self::ExpandType
Wrapper around the init method, necessary to type inference.
Source§impl LoadMaxRoundPlaneCount for SyncFullOrderedLoading
impl LoadMaxRoundPlaneCount for SyncFullOrderedLoading
Source§fn max_round_plane_count(
tiling_scheme: &TilingScheme,
ident: InputIdent,
_line_size: u8,
_plane_dim: u32,
) -> u32
fn max_round_plane_count( tiling_scheme: &TilingScheme, ident: InputIdent, _line_size: u8, _plane_dim: u32, ) -> u32
Returns the largest number of planes that evenly divides the tasks.
Source§impl LoadingValidation for SyncFullOrderedLoading
impl LoadingValidation for SyncFullOrderedLoading
Source§fn check<C: GlobalConfig>(
config: &C,
ident: Ident,
) -> Result<(), InvalidConfigError>
fn check<C: GlobalConfig>( config: &C, ident: Ident, ) -> Result<(), InvalidConfigError>
Verify that configs are valid for a loader, otherwise return an error stating why
Source§impl SyncFullLoadingStrategy for SyncFullOrderedLoading
impl SyncFullLoadingStrategy for SyncFullOrderedLoading
Source§type TilingLayout = ContiguousTilingLayout<OrderedTilingOrder>
type TilingLayout = ContiguousTilingLayout<OrderedTilingOrder>
The layout describing how data is tiled across the stage.
Source§type Job<MP: MatmulPrecision> = SyncFullTilewiseJob
type Job<MP: MatmulPrecision> = SyncFullTilewiseJob
The LoadingJob for this strategy.
Source§fn new_job<MP: MatmulPrecision, G: GlobalConfig>(
input_ident: InputIdent,
config: G,
) -> Self::Job<MP>
fn new_job<MP: MatmulPrecision, G: GlobalConfig>( input_ident: InputIdent, config: G, ) -> Self::Job<MP>
Returns the job with preliminary calculations done.
fn __expand_new_job<MP: MatmulPrecision, G: GlobalConfig>( scope: &mut Scope, input_ident: InputIdent, config: G, ) -> <Self::Job<MP> as CubeType>::ExpandType
impl Copy for SyncFullOrderedLoading
Auto Trait Implementations§
impl Freeze for SyncFullOrderedLoading
impl RefUnwindSafe for SyncFullOrderedLoading
impl Send for SyncFullOrderedLoading
impl Sync for SyncFullOrderedLoading
impl Unpin for SyncFullOrderedLoading
impl UnwindSafe for SyncFullOrderedLoading
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more