tvm
statistical.h
Go to the documentation of this file.
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one
3  * or more contributor license agreements. See the NOTICE file
4  * distributed with this work for additional information
5  * regarding copyright ownership. The ASF licenses this file
6  * to you under the Apache License, Version 2.0 (the
7  * "License"); you may not use this file except in compliance
8  * with the License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing,
13  * software distributed under the License is distributed on an
14  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15  * KIND, either express or implied. See the License for the
16  * specific language governing permissions and limitations
17  * under the License.
18  */
19 
24 #ifndef TVM_RELAX_ATTRS_STATISTICAL_H_
25 #define TVM_RELAX_ATTRS_STATISTICAL_H_
26 
27 #include <tvm/relax/expr.h>
28 
29 namespace tvm {
30 namespace relax {
31 
33 struct StatisticalAttrs : public tvm::AttrsNode<StatisticalAttrs> {
35  bool keepdims;
36 
37  TVM_DECLARE_ATTRS(StatisticalAttrs, "relax.attrs.StatisticalAttrs") {
38  TVM_ATTR_FIELD(axis).describe("The axis or axes along which to perform the reduction.");
39  TVM_ATTR_FIELD(keepdims).describe(
40  "If this is set to `True`, the reduced axes are left in the result as dimension with size "
41  "one.");
42  }
43 }; // struct StatisticalAttrs
44 
46 struct ScanopAttrs : public tvm::AttrsNode<ScanopAttrs> {
49  Bool exclusive = Bool(false);
50 
51  TVM_DECLARE_ATTRS(ScanopAttrs, "relax.attrs.ScanopAttrs") {
52  TVM_ATTR_FIELD(axis).describe(
53  "The axis along which to perform the scan computation."
54  "The default (None) is to compute over the flattened array.");
55  TVM_ATTR_FIELD(dtype).describe(
56  "The output data type."
57  "If dtype is not specified, it defaults to the dtype of input data.");
59  .describe("The first element is not included")
60  .set_default(Bool(false));
61  }
62 }; // struct ScanopAttrs
63 
64 } // namespace relax
65 } // namespace tvm
66 
67 #endif // TVM_RELAX_ATTRS_STATISTICAL_H_
The base class of the all the Use "curiously recurring template pattern".
Definition: attrs.h:870
Boolean constant.
Definition: expr.h:597
Runtime primitive data type.
Definition: data_type.h:43
Optional container that to represent to a Nullable variant of T.
Definition: optional.h:51
#define TVM_ATTR_FIELD(FieldName)
Declare an attribute field.
Definition: attrs.h:76
Box< bool > Bool
Boxed version of C++ bool.
Definition: boxed_primitive.h:121
runtime implementation for LibTorch/TorchScript.
Definition: analyzer.h:36
Attributes used in scan operators like cumsum, cumprod.
Definition: statistical.h:46
TVM_DECLARE_ATTRS(ScanopAttrs, "relax.attrs.ScanopAttrs")
Definition: statistical.h:51
Optional< Integer > axis
Definition: statistical.h:47
DataType dtype
Definition: statistical.h:48
Bool exclusive
Definition: statistical.h:49
Attributes for statistical operators.
Definition: statistical.h:33
TVM_DECLARE_ATTRS(StatisticalAttrs, "relax.attrs.StatisticalAttrs")
Definition: statistical.h:37
Optional< Array< Integer > > axis
Definition: statistical.h:34
bool keepdims
Definition: statistical.h:35