Hi,

I want to write a convolution backward function , and it would call Pytorch’s cuda path for default. Basically it has the following definition:

```
std::tuple<at::Tensor,at::Tensor,at::Tensor>
custom_convolution_backward(const at::Tensor & grad_output,
const at::Tensor & input,
const at::Tensor & weight,
at::IntArrayRef stride,
at::IntArrayRef padding,
at::IntArrayRef dilation,
bool transposed,
at::IntArrayRef output_padding,
int64_t groups,
std::array<bool,3> output_mask);
```

I explore the source code in PyTorch and find that CUDA uses slow_conv2d_backward_out_cuda.

My question is :

- Is
`slow_conv2d_backward_out_cuda`

the right function I need to use? - The function has args of
`finput`

and`fgrad_input`

finput, what are these two? I can’t find docs nor comments on them. - Why can’t I find the convolution backward function in Convolution.cpp ? Isn’t it should write the backward path as in cudnn ?