pub struct AsyncBufferLoader<MP: MatmulPrecision, S: StageConfig, CM: CopyMechanism<MP::ES>, L: AsyncBufferLoadingStrategy> { /* private fields */ }
Implementations§
Source§impl<MP: MatmulPrecision, S: StageConfig, CM: CopyMechanism<MP::ES>, L: AsyncBufferLoadingStrategy> AsyncBufferLoader<MP, S, CM, L>
impl<MP: MatmulPrecision, S: StageConfig, CM: CopyMechanism<MP::ES>, L: AsyncBufferLoadingStrategy> AsyncBufferLoader<MP, S, CM, L>
pub fn new( tensor: VirtualTensor<MP::EI>, x_offset: u32, y_offset: u32, batch_offset: u32, quantization: CubeOption<Quantization<MP>>, input_ident: InputIdent, config: CommonGlobalConfig<S>, ) -> Self
pub fn reader( this: &Self, buffer_id: BufferId, ) -> BufferReader<MP::ES, L::TilingLayout>
pub fn advance_view(this: &mut Self, k_offset: u32)
pub fn fill_stage( this: &mut Self, mechanism: &CM, buffer_id: BufferId, config: CommonGlobalConfig<S>, )
pub fn clear_stage( this: &mut Self, buffer_id: BufferId, config: CommonGlobalConfig<S>, )
pub fn __expand_new( context: &mut Scope, tensor: <VirtualTensor<MP::EI> as CubeType>::ExpandType, x_offset: <u32 as CubeType>::ExpandType, y_offset: <u32 as CubeType>::ExpandType, batch_offset: <u32 as CubeType>::ExpandType, quantization: <CubeOption<Quantization<MP>> as CubeType>::ExpandType, input_ident: InputIdent, config: CommonGlobalConfig<S>, ) -> <Self as CubeType>::ExpandType
pub fn __expand_reader( context: &mut Scope, this: <Self as CubeType>::ExpandType, buffer_id: BufferId, ) -> <BufferReader<MP::ES, L::TilingLayout> as CubeType>::ExpandType
pub fn __expand_advance_view( context: &mut Scope, this: <Self as CubeType>::ExpandType, k_offset: <u32 as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType
pub fn __expand_fill_stage( context: &mut Scope, this: <Self as CubeType>::ExpandType, mechanism: <CM as CubeType>::ExpandType, buffer_id: BufferId, config: CommonGlobalConfig<S>, ) -> <() as CubeType>::ExpandType
pub fn __expand_clear_stage( context: &mut Scope, this: <Self as CubeType>::ExpandType, buffer_id: BufferId, config: CommonGlobalConfig<S>, ) -> <() as CubeType>::ExpandType
Trait Implementations§
Source§impl<MP: MatmulPrecision, S: StageConfig, CM: CopyMechanism<MP::ES>, L: AsyncBufferLoadingStrategy> CubeType for AsyncBufferLoader<MP, S, CM, L>
impl<MP: MatmulPrecision, S: StageConfig, CM: CopyMechanism<MP::ES>, L: AsyncBufferLoadingStrategy> CubeType for AsyncBufferLoader<MP, S, CM, L>
type ExpandType = AsyncBufferLoaderExpand<MP, S, CM, L>
Source§fn init(scope: &mut Scope, expand: Self::ExpandType) -> Self::ExpandType
fn init(scope: &mut Scope, expand: Self::ExpandType) -> Self::ExpandType
Wrapper around the init method, necessary to type inference.
Auto Trait Implementations§
impl<MP, S, CM, L> Freeze for AsyncBufferLoader<MP, S, CM, L>
impl<MP, S, CM, L> RefUnwindSafe for AsyncBufferLoader<MP, S, CM, L>where
<L as AsyncBufferLoadingStrategy>::TilingLayout: RefUnwindSafe,
<L as AsyncBufferLoadingStrategy>::Job<MP>: RefUnwindSafe,
S: RefUnwindSafe,
CM: RefUnwindSafe,
<MP as MatmulPrecision>::EI: RefUnwindSafe,
<MP as MatmulPrecision>::ES: RefUnwindSafe,
impl<MP, S, CM, L> Send for AsyncBufferLoader<MP, S, CM, L>
impl<MP, S, CM, L> Sync for AsyncBufferLoader<MP, S, CM, L>
impl<MP, S, CM, L> Unpin for AsyncBufferLoader<MP, S, CM, L>where
<L as AsyncBufferLoadingStrategy>::TilingLayout: Unpin,
<L as AsyncBufferLoadingStrategy>::Job<MP>: Unpin,
S: Unpin,
CM: Unpin,
<MP as MatmulPrecision>::EI: Unpin,
<MP as MatmulPrecision>::ES: Unpin,
impl<MP, S, CM, L> UnwindSafe for AsyncBufferLoader<MP, S, CM, L>where
<L as AsyncBufferLoadingStrategy>::TilingLayout: UnwindSafe,
<L as AsyncBufferLoadingStrategy>::Job<MP>: UnwindSafe,
S: UnwindSafe,
CM: 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