|
#include <torch/library.h> |
|
|
|
#include "registration.h" |
|
#include "torch_binding.h" |
|
|
|
TORCH_LIBRARY_EXPAND(TORCH_EXTENSION_NAME, ops) { |
|
|
|
ops.def("poly_norm(Tensor! out, Tensor input, Tensor weight, Tensor bias, float eps) -> ()"); |
|
ops.def("poly_norm_backward(Tensor! input_grad, Tensor! weight_grad, Tensor! bias_grad, Tensor output_grad, Tensor input, Tensor weight, float eps) -> ()"); |
|
ops.impl("poly_norm", torch::kCUDA, &poly_norm); |
|
ops.impl("poly_norm_backward", torch::kCUDA, &poly_norm_backward); |
|
|
|
|
|
ops.def("rms_norm(Tensor! out, Tensor input, Tensor weight, float eps) -> ()"); |
|
ops.def("rms_norm_backward(Tensor! input_grad, Tensor! weight_grad, Tensor output_grad, Tensor input, Tensor weight, float eps) -> ()"); |
|
ops.impl("rms_norm", torch::kCUDA, &rms_norm); |
|
ops.impl("rms_norm_backward", torch::kCUDA, &rms_norm_backward); |
|
|
|
|
|
} |
|
|
|
REGISTER_EXTENSION(TORCH_EXTENSION_NAME) |
|
|