pub struct SimpleTmaConvolutionFamily<SMM: StageMatmulFamily> { /* private fields */ }
Trait Implementations§
Source§impl<SMM> ConvolutionConfigFactory for SimpleTmaConvolutionFamily<SMM>where
SMM: StageMatmulFamily,
impl<SMM> ConvolutionConfigFactory for SimpleTmaConvolutionFamily<SMM>where
SMM: StageMatmulFamily,
Source§type Config = HomogeneousConfig<Config<<SMM as MatmulConfigFactory>::Config>>
type Config = HomogeneousConfig<Config<<SMM as MatmulConfigFactory>::Config>>
Configuration tailored to the matmul implementation
type Input = <SMM as MatmulConfigFactory>::Input
Source§fn check_config(config: &Self::Config) -> Result<(), InvalidConfigError>
fn check_config(config: &Self::Config) -> Result<(), InvalidConfigError>
Asserts that the configuration for this matmul will lead to a valid computation
fn make_config( input: Self::Input, problem: &ConvolutionProblem, cube_dim: &CubeDim, cube_count: &CubeCount, ) -> Self::Config
fn check_availability<R: Runtime, MP: MatmulPrecision>( client: &ComputeClient<R::Server, R::Channel>, config: &Self::Config, ) -> Result<(), MatmulAvailabilityError>
Source§impl<SMM> ConvolutionFamily for SimpleTmaConvolutionFamily<SMM>
impl<SMM> ConvolutionFamily for SimpleTmaConvolutionFamily<SMM>
type Convolution<MP: MatmulPrecision> = SimpleTmaConvolution<MP, <SMM as StageMatmulFamily>::Matmul<MP, ContiguousTilingLayout<ColMajorTilingOrder>, ContiguousTilingLayout<RowMajorTilingOrder>>>
Source§impl<SMM: StageMatmulFamily<LhsReader = FullReaderFamily, RhsReader = FullReaderFamily>> ConvolutionLaunch for SimpleTmaConvolutionFamily<SMM>
impl<SMM: StageMatmulFamily<LhsReader = FullReaderFamily, RhsReader = FullReaderFamily>> ConvolutionLaunch for SimpleTmaConvolutionFamily<SMM>
Source§unsafe fn launch_unchecked<'a, MS: MatmulSpec, R: Runtime>(
client: &ComputeClient<<R as Runtime>::Server, <R as Runtime>::Channel>,
cube_dim: CubeDim,
cube_count: CubeCount,
input: InputRuntimeArg<'a, MS, R>,
bias: Option<TensorArg<'a, R>>,
output: OutputRuntimeArg<'a, MS, R>,
problem: &ConvolutionProblem,
config: <Self as ConvolutionConfigFactory>::Config,
)
unsafe fn launch_unchecked<'a, MS: MatmulSpec, R: Runtime>( client: &ComputeClient<<R as Runtime>::Server, <R as Runtime>::Channel>, cube_dim: CubeDim, cube_count: CubeCount, input: InputRuntimeArg<'a, MS, R>, bias: Option<TensorArg<'a, R>>, output: OutputRuntimeArg<'a, MS, R>, problem: &ConvolutionProblem, config: <Self as ConvolutionConfigFactory>::Config, )
Entry point Read more
Auto Trait Implementations§
impl<SMM> Freeze for SimpleTmaConvolutionFamily<SMM>
impl<SMM> RefUnwindSafe for SimpleTmaConvolutionFamily<SMM>
impl<SMM> Send for SimpleTmaConvolutionFamily<SMM>
impl<SMM> Sync for SimpleTmaConvolutionFamily<SMM>
impl<SMM> Unpin for SimpleTmaConvolutionFamily<SMM>
impl<SMM> UnwindSafe for SimpleTmaConvolutionFamily<SMM>
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