pub struct TmaIm2colLoader<MP: MatmulPrecision, G: ConvGemmConfig> {
pub map: Im2colTmaReader<MP::EI>,
pub stages: Sequence<StageMemory<MP::ES, TmaIm2colTiling>>,
/* private fields */
}
Expand description
Loader that translates matrix coordinates to input coordinates using the im2col
algorithm
Fields§
§map: Im2colTmaReader<MP::EI>
§stages: Sequence<StageMemory<MP::ES, TmaIm2colTiling>>
Implementations§
Source§impl<MP: MatmulPrecision, G: ConvGemmConfig> TmaIm2colLoader<MP, G>
impl<MP: MatmulPrecision, G: ConvGemmConfig> TmaIm2colLoader<MP, G>
pub fn new( tensor: VirtualTensor<MP::EI>, x_offset: u32, y_offset: u32, runtime_args: &RuntimeArgs, num_stages: u32, config: G, ) -> Self
pub fn fill_stage( this: &mut Self, bar: &Barrier<MP::ES>, stage_idx: u32, config: G, )
pub fn advance_view(this: &mut Self, k_offset: u32)
pub fn reader(this: &Self, stage_idx: u32) -> TmaIm2colReader<MP>
pub fn __expand_new( scope: &mut Scope, tensor: <VirtualTensor<MP::EI> as CubeType>::ExpandType, x_offset: <u32 as CubeType>::ExpandType, y_offset: <u32 as CubeType>::ExpandType, runtime_args: <RuntimeArgs as CubeType>::ExpandType, num_stages: u32, config: G, ) -> <Self as CubeType>::ExpandType
pub fn __expand_fill_stage( scope: &mut Scope, this: <Self as CubeType>::ExpandType, bar: <Barrier<MP::ES> as CubeType>::ExpandType, stage_idx: u32, config: G, ) -> <() as CubeType>::ExpandType
pub fn __expand_advance_view( scope: &mut Scope, this: <Self as CubeType>::ExpandType, k_offset: <u32 as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType
pub fn __expand_reader( scope: &mut Scope, this: <Self as CubeType>::ExpandType, stage_idx: u32, ) -> <TmaIm2colReader<MP> as CubeType>::ExpandType
Trait Implementations§
Source§impl<MP: MatmulPrecision, G: ConvGemmConfig> CubeType for TmaIm2colLoader<MP, G>
impl<MP: MatmulPrecision, G: ConvGemmConfig> CubeType for TmaIm2colLoader<MP, G>
type ExpandType = TmaIm2colLoaderExpand<MP, G>
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.
Auto Trait Implementations§
impl<MP, G> Freeze for TmaIm2colLoader<MP, G>
impl<MP, G> RefUnwindSafe for TmaIm2colLoader<MP, G>where
G: RefUnwindSafe,
<MP as MatmulPrecision>::EI: RefUnwindSafe,
<MP as MatmulPrecision>::ES: RefUnwindSafe,
impl<MP, G> Send for TmaIm2colLoader<MP, G>
impl<MP, G> Sync for TmaIm2colLoader<MP, G>
impl<MP, G> Unpin for TmaIm2colLoader<MP, G>
impl<MP, G> UnwindSafe for TmaIm2colLoader<MP, G>where
G: UnwindSafe,
<MP as MatmulPrecision>::EI: UnwindSafe,
<MP as MatmulPrecision>::ES: UnwindSafe,
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