cubecl_linalg/convolution/
config.rs

1use crate::matmul::components::global::GlobalConfig;
2
3/// Convolution specific config, extends regular matmul [`Config`](global::Config)
4pub trait ConvGemmConfig: GlobalConfig {
5    /// The size of the convolution kernel at `dim`
6    fn kernel_size(&self, dim: u32) -> u32;
7    /// The dilation of the kernel at `dim`
8    fn dilation(&self, dim: u32) -> u32;
9    /// The stride of the kernel at `dim`
10    fn stride(&self, dim: u32) -> u32;
11    /// The padding of the kernel at `dim`
12    fn padding(&self, dim: u32) -> i32;
13}