gloss_burn_multibackend/ops/
module.rs

1use burn::tensor::ops::{
2    ConvOptions, ConvTransposeOptions, DeformConv2dBackward, DeformConvOptions, InterpolateOptions, MaxPool1dWithIndices, MaxPool2dBackward,
3    MaxPool2dWithIndices, ModuleOps,
4};
5
6use crate::tensor::MultiIntTensor;
7use crate::{backend::MultiBackend, tensor::MultiFloatTensor};
8
9#[allow(unused_variables)]
10impl ModuleOps<Self> for MultiBackend {
11    fn embedding(weights: MultiFloatTensor, indices: MultiIntTensor) -> MultiFloatTensor {
12        unimplemented!()
13    }
14
15    fn embedding_backward(weights: MultiFloatTensor, output: MultiFloatTensor, indices: MultiIntTensor) -> MultiFloatTensor {
16        unimplemented!()
17    }
18
19    fn conv1d(x: MultiFloatTensor, weight: MultiFloatTensor, bias: Option<MultiFloatTensor>, options: ConvOptions<1>) -> MultiFloatTensor {
20        unimplemented!()
21    }
22
23    fn conv2d(x: MultiFloatTensor, weight: MultiFloatTensor, bias: Option<MultiFloatTensor>, options: ConvOptions<2>) -> MultiFloatTensor {
24        unimplemented!()
25    }
26
27    fn conv3d(x: MultiFloatTensor, weight: MultiFloatTensor, bias: Option<MultiFloatTensor>, options: ConvOptions<3>) -> MultiFloatTensor {
28        unimplemented!()
29    }
30
31    fn deform_conv2d(
32        _x: MultiFloatTensor,
33        _offset: MultiFloatTensor,
34        _weight: MultiFloatTensor,
35        _mask: Option<MultiFloatTensor>,
36        _bias: Option<MultiFloatTensor>,
37        _options: DeformConvOptions<2>,
38    ) -> MultiFloatTensor {
39        unimplemented!()
40    }
41
42    fn deform_conv2d_backward(
43        _x: MultiFloatTensor,
44        _offset: MultiFloatTensor,
45        _weight: MultiFloatTensor,
46        _mask: Option<MultiFloatTensor>,
47        _bias: Option<MultiFloatTensor>,
48        _out_grad: MultiFloatTensor,
49        _options: DeformConvOptions<2>,
50    ) -> DeformConv2dBackward<Self> {
51        unimplemented!()
52    }
53
54    fn conv_transpose1d(
55        x: MultiFloatTensor,
56        weight: MultiFloatTensor,
57        bias: Option<MultiFloatTensor>,
58        options: ConvTransposeOptions<1>,
59    ) -> MultiFloatTensor {
60        unimplemented!()
61    }
62
63    fn conv_transpose2d(
64        x: MultiFloatTensor,
65        weight: MultiFloatTensor,
66        bias: Option<MultiFloatTensor>,
67        options: ConvTransposeOptions<2>,
68    ) -> MultiFloatTensor {
69        unimplemented!()
70    }
71
72    fn conv_transpose3d(
73        x: MultiFloatTensor,
74        weight: MultiFloatTensor,
75        bias: Option<MultiFloatTensor>,
76        options: ConvTransposeOptions<3>,
77    ) -> MultiFloatTensor {
78        unimplemented!()
79    }
80
81    fn avg_pool1d(x: MultiFloatTensor, kernel_size: usize, stride: usize, padding: usize, count_include_pad: bool) -> MultiFloatTensor {
82        unimplemented!()
83    }
84    fn avg_pool2d(
85        x: MultiFloatTensor,
86        kernel_size: [usize; 2],
87        stride: [usize; 2],
88        padding: [usize; 2],
89        count_include_pad: bool,
90    ) -> MultiFloatTensor {
91        unimplemented!()
92    }
93
94    fn avg_pool2d_backward(
95        x: MultiFloatTensor,
96        grad: MultiFloatTensor,
97        kernel_size: [usize; 2],
98        stride: [usize; 2],
99        padding: [usize; 2],
100        count_include_pad: bool,
101    ) -> MultiFloatTensor {
102        unimplemented!()
103    }
104
105    fn max_pool1d(x: MultiFloatTensor, kernel_size: usize, stride: usize, padding: usize, dilation: usize) -> MultiFloatTensor {
106        unimplemented!()
107    }
108
109    fn max_pool1d_with_indices(
110        x: MultiFloatTensor,
111        kernel_size: usize,
112        stride: usize,
113        padding: usize,
114        dilation: usize,
115    ) -> MaxPool1dWithIndices<MultiBackend> {
116        unimplemented!()
117    }
118
119    fn max_pool2d(x: MultiFloatTensor, kernel_size: [usize; 2], stride: [usize; 2], padding: [usize; 2], dilation: [usize; 2]) -> MultiFloatTensor {
120        unimplemented!()
121    }
122
123    fn max_pool2d_with_indices(
124        x: MultiFloatTensor,
125        kernel_size: [usize; 2],
126        stride: [usize; 2],
127        padding: [usize; 2],
128        dilation: [usize; 2],
129    ) -> MaxPool2dWithIndices<MultiBackend> {
130        unimplemented!()
131    }
132
133    fn max_pool2d_with_indices_backward(
134        x: MultiFloatTensor,
135        kernel_size: [usize; 2],
136        stride: [usize; 2],
137        padding: [usize; 2],
138        dilation: [usize; 2],
139        output_grad: MultiFloatTensor,
140        indices: MultiIntTensor,
141    ) -> MaxPool2dBackward<MultiBackend> {
142        unimplemented!()
143    }
144
145    fn adaptive_avg_pool2d(x: MultiFloatTensor, output_size: [usize; 2]) -> MultiFloatTensor {
146        unimplemented!()
147    }
148
149    fn adaptive_avg_pool2d_backward(x: MultiFloatTensor, grad: MultiFloatTensor) -> MultiFloatTensor {
150        unimplemented!()
151    }
152
153    fn adaptive_avg_pool1d(x: MultiFloatTensor, output_size: usize) -> MultiFloatTensor {
154        unimplemented!()
155    }
156
157    fn interpolate(x: MultiFloatTensor, output_size: [usize; 2], options: InterpolateOptions) -> MultiFloatTensor {
158        unimplemented!()
159    }
160
161    fn interpolate_backward(x: MultiFloatTensor, grad: MultiFloatTensor, output_size: [usize; 2], options: InterpolateOptions) -> MultiFloatTensor {
162        unimplemented!()
163    }
164}