Spaces:
Sleeping
Sleeping
Audio-Deepfake-Detection
/
fairseq-a54021305d6b3c4c5959ac9395135f63202db8f1
/fairseq
/modules
/dynamicconv_layer
/dynamicconv_cuda.cpp
/** | |
* Copyright (c) Facebook, Inc. and its affiliates. | |
* | |
* This source code is licensed under the MIT license found in the | |
* LICENSE file in the root directory of this source tree. | |
*/ | |
std::vector<at::Tensor> | |
dynamicconv_cuda_forward(at::Tensor input, at::Tensor filters, int padding_l); | |
std::vector<at::Tensor> dynamicconv_cuda_backward( | |
at::Tensor gradOutput, | |
int padding_l, | |
at::Tensor input, | |
at::Tensor filters); | |
std::vector<at::Tensor> | |
dynamicconv_forward(at::Tensor input, at::Tensor filters, int padding_l) { | |
CHECK_INPUT(input); | |
CHECK_INPUT(filters); | |
return dynamicconv_cuda_forward(input, filters, padding_l); | |
} | |
std::vector<at::Tensor> dynamicconv_backward( | |
at::Tensor gradOutput, | |
int padding_l, | |
at::Tensor input, | |
at::Tensor filters) { | |
CHECK_INPUT(gradOutput); | |
CHECK_INPUT(input); | |
CHECK_INPUT(filters); | |
return dynamicconv_cuda_backward(gradOutput, padding_l, input, filters); | |
} | |
PYBIND11_MODULE(TORCH_EXTENSION_NAME, m) { | |
m.def("forward", &dynamicconv_forward, "dynamicconv forward (CUDA)"); | |
m.def("backward", &dynamicconv_backward, "dynamicconv backward (CUDA)"); | |
} | |