pub struct SimpleConv<TMM: TileMatmulFamily, LL: FullLoadingStrategy<RuntimeArgs>, LR: FullLoadingStrategy<RuntimeArgs>> { /* private fields */ }Expand description
Cmma convolution
Trait Implementations§
Source§impl<TMM: TileMatmulFamily<LhsTile = Strided, RhsTile = Strided, AccTile = CubeOption<Strided>, OutTile = Strided>, LL: FullLoadingStrategy<RuntimeArgs, TileKind = Strided>, LR: FullLoadingStrategy<RuntimeArgs, TileKind = Strided, SyncStrategy = LL::SyncStrategy>> Algorithm for SimpleConv<TMM, LL, LR>
impl<TMM: TileMatmulFamily<LhsTile = Strided, RhsTile = Strided, AccTile = CubeOption<Strided>, OutTile = Strided>, LL: FullLoadingStrategy<RuntimeArgs, TileKind = Strided>, LR: FullLoadingStrategy<RuntimeArgs, TileKind = Strided, SyncStrategy = LL::SyncStrategy>> Algorithm for SimpleConv<TMM, LL, LR>
type Routine = SimpleAlgorithm<TMM, LL, LR, SyncBiasLoading>
type Args = TensorArgs<RuntimeArgs>
fn into_tensor_handle<R: Runtime>( client: &ComputeClient<R>, handle: &TensorHandleRef<'_, R>, dtype: StorageType, _operation: ConvolutionOperation, ) -> Result<TensorHandle<R>, LaunchError>
Source§const IS_SPECIALIZED: bool = false
const IS_SPECIALIZED: bool = false
Whether to select specialized load flow in tests. Should replace with something cleaner
eventually, but this is nice and simple.
fn filter_line_sizes(line_sizes: AvailableLineSizes) -> AvailableLineSizes
Auto Trait Implementations§
impl<TMM, LL, LR> Freeze for SimpleConv<TMM, LL, LR>
impl<TMM, LL, LR> RefUnwindSafe for SimpleConv<TMM, LL, LR>
impl<TMM, LL, LR> Send for SimpleConv<TMM, LL, LR>
impl<TMM, LL, LR> Sync for SimpleConv<TMM, LL, LR>
impl<TMM, LL, LR> Unpin for SimpleConv<TMM, LL, LR>
impl<TMM, LL, LR> UnwindSafe for SimpleConv<TMM, LL, LR>
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