File size: 988 Bytes
44e9845
 
 
 
 
 
 
f517c97
 
 
 
 
44e9845
 
f3b99fb
 
f517c97
 
 
 
f3b99fb
 
44e9845
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <torch/library.h>

#include "registration.h"
#include "torch_binding.h"

TORCH_LIBRARY_EXPAND(TORCH_EXTENSION_NAME, ops) {
  // Activation 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);

  // Activation ops
  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)