File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ #ifndef INFINI_OPS_BASE_GEQRF_H_
2+ #define INFINI_OPS_BASE_GEQRF_H_
3+
4+ #include " operator.h"
5+
6+ namespace infini ::ops {
7+
8+ class Geqrf : public Operator <Geqrf> {
9+ public:
10+ Geqrf (const Tensor input, Tensor a, Tensor tau)
11+ : input_shape_{input.shape ()},
12+ input_strides_{input.strides ()},
13+ input_type_{input.dtype ()},
14+ a_shape_{a.shape ()},
15+ a_strides_{a.strides ()},
16+ a_type_{a.dtype ()},
17+ tau_shape_{tau.shape ()},
18+ tau_strides_{tau.strides ()},
19+ tau_type_{tau.dtype ()},
20+ device_index_{a.device ().index ()} {}
21+
22+ virtual void operator ()(const Tensor input, Tensor a, Tensor tau) const = 0;
23+
24+ protected:
25+ Tensor::Shape input_shape_;
26+
27+ Tensor::Strides input_strides_;
28+
29+ DataType input_type_;
30+
31+ Tensor::Shape a_shape_;
32+
33+ Tensor::Strides a_strides_;
34+
35+ DataType a_type_;
36+
37+ Tensor::Shape tau_shape_;
38+
39+ Tensor::Strides tau_strides_;
40+
41+ DataType tau_type_;
42+
43+ int device_index_{0 };
44+ };
45+
46+ } // namespace infini::ops
47+
48+ #endif
You can’t perform that action at this time.
0 commit comments