24 #ifndef TVM_RELAY_ATTRS_TRANSFORM_H_ 25 #define TVM_RELAY_ATTRS_TRANSFORM_H_ 44 "What axis the sliding window begin forming over." 45 "Window will be slid over this axis and all following axes." 46 "The axis value determines the window shape (and thus, the" 48 "window shape and strides must both be of length" 52 "The window shape to form over the input." 53 "Window shape must be of length `data.ndim-axis`.");
55 "How to stride the window along each dimension." 56 "Strides must be of length `data.ndim-axis`.");
76 "The axis at which the input array is expanded." 77 "Should lie in range `[-data.ndim - 1, data.ndim]`." 78 "If `axis < 0`, it is the first axis inserted;" 79 "If `axis >= 0`, it is the last axis inserted in Python's negative indexing.");
81 .describe(
"Number of axes to be inserted. Should be >= 0.")
93 .describe(
"Number of axes to be inserted. Should be >= 0.")
105 "The axis at which the input arrays are concatenated." 106 "Should lie in range `[-ndim, ndim)`.")
115 TVM_ATTR_FIELD(axes).describe(
"The target axes order, reverse order if not specified.");
125 "The new shape. Should be compatible with the original shape.");
127 "Whether to honor the value of zero in newshape.");
139 "The axis of the input where reshaping should begin.");
141 .set_default(NullValue<Integer>())
142 .describe(
"The axis of the input where reshaping should end, exclusive.");
144 "The axis of the shape_like tensor to begin taking dimensions from.");
146 .set_default(NullValue<Integer>())
147 .describe(
"The axis of the shape_like tensor to end taking dimensions from, exclusive.");
156 TVM_ATTR_FIELD(axis).set_default(0).describe(
"The axis over which to select values.");
158 "Reduction mode of the scatter elements, " 159 "either \"update\", \"add\", \"mul\", \"mean\", \"min\" or \"max\".");
168 "Accumulation mode of the ScatterND, " 169 "either \"update\", \"add\", \"mul\", \"min\" or \"max\".");
178 .set_default(NullValue<Integer>())
179 .describe(
"The axis over which to select values.");
190 .set_default(NullValue<Integer>())
192 "The size of an indexing tuple, which is a fixed value. Only needed when the number of " 193 "indexting tuples is dynamic.");
205 .describe(
"The batch_dims over which to select values.");
207 .set_default(NullValue<Integer>())
208 .describe(
"The axis over which to select values.");
210 "Specify how out-of-bound indices will behave." 211 "clip - clip to the range (default)" 212 "wrap - wrap around the indices" 213 "fast - no clip or wrap around (user must make sure indices are in-bound)");
236 TVM_ATTR_FIELD(start).describe(
"Start of interval. The interval includes this value.");
237 TVM_ATTR_FIELD(stop).describe(
"Stop of interval. The interval does not include this value.");
250 "Indexing mode, either \"ij\" for matrix or \"xy\" for cartesian in which first two" 251 "dimensions are swapped.")
261 "The axis in the result array along which the input arrays are stacked.");
270 TVM_ATTR_FIELD(repeats).describe(
"The number of repetitions for each element.");
272 .set_default(NullValue<Integer>())
273 .describe(
" The axis along which to repeat values.");
282 "The number of times for repeating the tensor a." 283 "Each dim sizeof reps must be a positive integer.");
292 .set_default(NullValue<Integer>())
293 .describe(
"The axis along which to reverse elements.");
304 "The seq axis along which to reverse elements.");
307 .describe(
"The batch axis along which to slice the tensor.");
319 "The axis to squeeze in the input tensor." 320 "If `axis = None`, all axis of dimension 1 get squeezed;" 321 "Else, the dimension in axes get squeezed." 322 "It is an error if an axis does not has dimension 1.")
334 "Indices or sections to split into. Accepts an int or a tuple" 335 "If indices_or_sections is an integer, the input will be divided equally" 336 "along given axis. If such a split is not possible, an error is raised." 337 "If indices_or_sections is a tuple of sorted integers," 338 "the entries indicate where along axis the array is split.");
339 TVM_ATTR_FIELD(axis).set_default(0).describe(
"the axis to be splitted.");
352 TVM_ATTR_FIELD(begin).describe(
"Indices for begin of slice, begin index is also inclusive");
353 TVM_ATTR_FIELD(end).describe(
"Indices for end of slice, end index is exclusive");
355 "Stride values of the slice, a stride can be negative, which causes a reverse slice.");
359 "The slice mode [end, size]." 360 "end - The default slice mode, ending indices for the slice." 361 "size - The input strides will be ignored, input end in this mode indicates the size" 362 "of a slice starting at the location specified by begin. If end[i] is -1," 363 "all remaining elements in that dimension are included in the slice");
365 "Axes along which slicing is applied. When it is specified, the length of begin, end, " 366 "strides, and axes must be equal.");
375 "List of axes on which input data will be sliced according to the " 376 "corresponding size of the second input. By default will slice " 377 "on all axes. Negative axes mean counting in reverse.");
399 .describe(
"Multiplier of a fixed floating point number described as multiplier*2^(shift)");
401 "Shift of a fixed floating point number described as multiplier*2^(shift)");
413 .describe(
"Whether left shift is required in fixed point multiplication.")
416 .describe(
"Whether right shift is required in fixed point multiplication.")
418 TVM_ATTR_FIELD(axes).describe(
"List of axes on which input data was quantized.");
428 TVM_ATTR_FIELD(src_layout).describe(
"The source layout of the tensor. (e.g. NCHW)");
429 TVM_ATTR_FIELD(dst_layout).describe(
"The destination layout of the tensor. (e.g. NCHW16c)");
440 "relay.attrs.AutoSchedulerLayoutTransformAttrs") {
441 TVM_ATTR_FIELD(src_layout).describe(
"The source layout of the tensor. (e.g. 1N32C112H112W)");
443 .describe(
"The destination layout of the tensor. (e.g. 1N2C112H112W16c)");
452 "relay.attrs.MetaScheduleLayoutTransformAttrs") {
454 "The order of the extents, for example, " 455 "let extents = [2, 3, 4], reorder = [0, 2, 1], and the shape of buffer A is (4, 6)" 456 "then A[i, j] will be first rewritten to " 457 "A[(6 * i + j) / 12, (6 * i + j) / 4 % 3 , (6 * i + j) % 4] according to the `extents`," 458 "and then reordered to A[(6 * i + j) / 12, (6 * i + j) % 4 , (6 * i + j) / 4 % 3]" 459 "according to `reorder`");
477 TVM_ATTR_FIELD(mask_value).set_default(0).describe(
"The masking value.");
479 "The axis of the length dimension. Can only be 0 or 1.");
488 TVM_ATTR_FIELD(output_shape).describe(
"Shape of the dense output tensor");
508 TVM_ATTR_FIELD(depth).set_default(1).describe(
"Depth of the one hot dimension.");
522 TVM_ATTR_FIELD(k1).set_default(0).describe(
"Lower limit (included) of the range of diagonals.");
523 TVM_ATTR_FIELD(k2).set_default(0).describe(
"Upper limit (included) of the range of diagonals.");
526 .describe(
"Bool, true iff super-diagonal is right aligned (left-padded).");
529 .describe(
"Bool, true iff sub-diagonal is right aligned (left-padded).");
539 TVM_ATTR_FIELD(axis).describe(
"The axis to operate over").set_default(NullValue<Integer>());
544 .describe(
"The first element is not included")
545 .set_default(
Bool(
false));
554 TVM_ATTR_FIELD(sorted).describe(
"Whether the unique elements are sorted").set_default(
true);
556 .describe(
"Whether to return an additional tensor with counts of each unique elements")
566 TVM_ATTR_FIELD(equation).describe(
"The einsum expression string");
579 TVM_ATTR_FIELD(n_fft).set_default(-1).describe(
"The size of Fourier transform");
582 .describe(
"The distance between neighboring sliding window frames");
583 TVM_ATTR_FIELD(win_length).set_default(-1).describe(
"The size of window frame and STFT filter");
586 .describe(
"Whether to return the normalized STFT results");
588 "Whether to return onesided result or fill with conjugate symmetry");
598 .describe(
"Whether to perform the inverse discrete Fourier transform")
599 .set_default(
Bool(
false));
608 "Whether to keep the upper or lower half of the diagonal.");
614 #endif // TVM_RELAY_ATTRS_TRANSFORM_H_ DataType dtype
Definition: transform.h:220
int rhs_begin
Definition: transform.h:135
Attributes used in stft operator.
Definition: transform.h:571
double a_max
Definition: transform.h:384
TVM_DECLARE_ATTRS(ReshapeLikeAttrs, "relay.attrs.ReshapeLikeAttrs")
Definition: transform.h:137
Integer axis
Definition: transform.h:289
TVM_DECLARE_ATTRS(StridedSliceAttrs, "relay.attrs.StridedSliceAttrs")
Definition: transform.h:351
Array< Integer > axes
Definition: transform.h:371
int lhs_begin
Definition: transform.h:133
TVM_DECLARE_ATTRS(MatrixSetDiagAttrs, "relay.attrs.MatrixSetDiagAttrs")
Definition: transform.h:521
data type cast
Definition: transform.h:61
TVM_DECLARE_ATTRS(ScatterElementsAttrs, "relay.attrs.ScatterElementsAttrs")
Definition: transform.h:155
Boolean constant.
Definition: expr.h:587
Attributes for FixedPointMultiply operator.
Definition: transform.h:393
int axis
Definition: transform.h:71
bool allowzero
Definition: transform.h:122
TVM_DECLARE_ATTRS(NdarraySizeAttrs, "relay.attrs.NdarraySizeAttrs")
Definition: transform.h:496
TVM_DECLARE_ATTRS(ReshapeAttrs, "relay.attrs.ReshapeAttrs")
Definition: transform.h:123
TVM_DECLARE_ATTRS(ExpandDimsAttrs, "relay.attrs.ExpandDimsAttrs")
Definition: transform.h:74
int axis
Definition: transform.h:504
Attributes used in expand_dims operators.
Definition: transform.h:70
Relay expression language.
Attributes used in DFT operator.
Definition: transform.h:593
Attributes used in matrix_set_diag operator.
Definition: transform.h:515
runtime implementation for LibTorch/TorchScript.
Definition: analyzer.h:36
Array< Integer > axes
Definition: transform.h:113
TVM_DECLARE_ATTRS(DynExpandDimsAttrs, "relay.attrs.DynExpandDimsAttrs")
Definition: transform.h:91
Attributes used in unique operator.
Definition: transform.h:550
DataType dtype
Definition: transform.h:505
int axis
Definition: transform.h:329
DataType dtype
Definition: transform.h:62
TVM_DECLARE_ATTRS(ShapeOfAttrs, "relay.attrs.ShapeOfAttrs")
Definition: transform.h:467
Attributes that specify a tensor.
Definition: transform.h:218
int axis
Definition: transform.h:474
Integer repeats
Definition: transform.h:267
TVM_DECLARE_ATTRS(StackAttrs, "relay.attrs.StackAttrs")
Definition: transform.h:259
Array< Integer > newshape
Definition: transform.h:121
Definition: transform.h:183
Attributes used in transpose operators.
Definition: transform.h:112
Attributes used in one-hot operator.
Definition: transform.h:502
int32_t multiplier
Definition: transform.h:394
TVM_DECLARE_ATTRS(ConcatenateAttrs, "relay.attrs.ConcatenateAttrs")
Definition: transform.h:102
Definition: transform.h:173
Attributes for Clip operator.
Definition: transform.h:382
TVM_DECLARE_ATTRS(DFTAttrs, "relay.attrs.DFTAttrs")
Definition: transform.h:596
int num_newaxis
Definition: transform.h:72
TVM_DECLARE_ATTRS(TileAttrs, "relay.attrs.TileAttrs")
Definition: transform.h:280
Attributes for StridedSlice operator.
Definition: transform.h:344
Optional< Array< Integer > > begin
Definition: transform.h:345
TVM_DECLARE_ATTRS(ClipAttrs, "relay.attrs.ClipAttrs")
Definition: transform.h:386
TVM_DECLARE_ATTRS(UniqueAttrs, "relay.attrs.UniqueAttrs")
Definition: transform.h:553
Helpers for attribute objects.
ObjectRef indices_or_sections
Definition: transform.h:328
Integer batch_dims
Definition: transform.h:184
Definition: transform.h:370
tvm::String slice_mode
Definition: transform.h:348
Optional< Array< Integer > > shape
Definition: transform.h:219
Attributes used in MXNet-style reshape_like operators.
Definition: transform.h:132
Defines a remapping of buffer indices.
Attributes used in dynamic expand_dims operators.
Definition: transform.h:88
TVM_DECLARE_ATTRS(SequenceMaskAttrs, "relay.attrs.SequenceMaskAttrs")
Definition: transform.h:476
Array< Integer > window_shape
Definition: transform.h:40
Expr start
Definition: transform.h:230
TVM_DECLARE_ATTRS(EinsumAttrs, "relay.attrs.EinsumAttrs")
Definition: transform.h:565
Attributes used in einsum operator.
Definition: transform.h:562
String equation
Definition: transform.h:563
Attributes used in cumsum and cumprod operator.
Definition: transform.h:534
String reduction
Definition: transform.h:153
Definition: transform.h:151
TVM_DECLARE_ATTRS(SparseToDenseAttrs, "relay.attrs.SparseToDenseAttrs")
Definition: transform.h:487
Integer batch_dims
Definition: transform.h:198
tvm::String mode
Definition: transform.h:200
Runtime primitive data type.
Definition: data_type.h:41
Attributes used in arange operators.
Definition: transform.h:229
TVM_DECLARE_ATTRS(GatherNDAttrs, "relay.attrs.GatherNDAttrs")
Definition: transform.h:187
Array, container representing a contiguous sequence of ObjectRefs.
Definition: array.h:289
Definition: index_map.h:177
Attributes used in reverse operators.
Definition: transform.h:288
Definition: transform.h:327
int axis
Definition: transform.h:39
TVM_DECLARE_ATTRS(ReverseAttrs, "relay.attrs.ReverseAttrs")
Definition: transform.h:290
double a_min
Definition: transform.h:383
int depth
Definition: transform.h:503
Attributes used in meshgrid operators.
Definition: transform.h:244
DataType dtype
Definition: transform.h:536
TVM_DECLARE_ATTRS(GatherAttrs, "relay.attrs.GatherAttrs")
Definition: transform.h:176
#define TVM_ATTR_FIELD(FieldName)
Declare an attribute field.
Definition: attrs.h:76
TVM_DECLARE_ATTRS(ArangeAttrs, "relay.attrs.ArangeAttrs")
Definition: transform.h:235
Integer axis
Definition: transform.h:152
Attributes used in tile operators.
Definition: transform.h:278
DataType dtype
Definition: transform.h:233
bool sorted
Definition: transform.h:551
Reference to string objects.
Definition: string.h:98
Definition: transform.h:603
String mode
Definition: transform.h:164
TVM_DECLARE_ATTRS(InitOpAttrs, "relay.attrs.InitOpAttrs")
Definition: transform.h:222
Managed reference to RelayExprNode.
Definition: expr.h:433
Expr stop
Definition: transform.h:231
Array< Integer > strides
Definition: transform.h:41
Integer lhs_end
Definition: transform.h:134
TVM_DECLARE_ATTRS(SqueezeAttrs, "relay.attrs.SqueezeAttrs")
Definition: transform.h:316
TVM_DECLARE_ATTRS(SliceLikeAttrs, "relay.attrs.SliceLikeAttrs")
Definition: transform.h:373
Integer axis
Definition: transform.h:535
Array< Integer > reps
Definition: transform.h:279
bool normalized
Definition: transform.h:575
Integer seq_axis
Definition: transform.h:299
TVM_DECLARE_ATTRS(ScatterNDAttrs, "relay.attrs.ScatterNDAttrs")
Definition: transform.h:166
bool super_diag_right_align
Definition: transform.h:518
bool return_counts
Definition: transform.h:552
TVM_DECLARE_ATTRS(StftAttrs, "relay.attrs.StftAttrs")
Definition: transform.h:578
Base class of all object reference.
Definition: object.h:511
DataType NullValue< DataType >()
Definition: attrs.h:90
bool is_rshift_required
Definition: transform.h:408
TVM_DECLARE_ATTRS(CastAttrs, "relay.attrs.CastAttrs")
Definition: transform.h:64
Attributes used in sparse_to_dense operator.
Definition: transform.h:484
std::string indexing
Definition: transform.h:245
int num_newaxis
Definition: transform.h:89
TVM_DECLARE_ATTRS(SlidingWindowAttrs, "relay.attrs.SlidingWindowAttrs")
Definition: transform.h:42
TVM_DECLARE_ATTRS(TransposeAttrs, "relay.attrs.TransposeAttrs")
Definition: transform.h:114
bool onesided
Definition: transform.h:576
TVM_DECLARE_ATTRS(SplitAttrs, "relay.attrs.SplitAttrs")
Definition: transform.h:331
Attributes for ndarray_size operator.
Definition: transform.h:493
Optional< Array< Integer > > axes
Definition: transform.h:349
Definition: transform.h:163
TVM_DECLARE_ATTRS(MeshgridAttrs, "relay.attrs.MeshgridAttrs")
Definition: transform.h:247
Attributes used in stack operators.
Definition: transform.h:257
int32_t shift
Definition: transform.h:395
Attributes for per channel/per axes FixedPointMultiply operator.
Definition: transform.h:406
Definition: transform.h:197
Attributes used for the sliding_window operator.
Definition: transform.h:38
double mask_value
Definition: transform.h:473
DataType dtype
Definition: transform.h:494
The base class of the all the Use "curiously recurring template pattern".
Definition: attrs.h:834
DataType dtype
Definition: transform.h:465
bool sub_diag_right_align
Definition: transform.h:519
TVM_DECLARE_ATTRS(ReverseSequenceAttrs, "relay.attrs.ReverseSequenceAttrs")
Definition: transform.h:302
int k1
Definition: transform.h:516
Expr step
Definition: transform.h:232
Attributes used in repeat operators.
Definition: transform.h:266
Optional< Array< Integer > > strides
Definition: transform.h:347
Attributes used in squeeze operators.
Definition: transform.h:312
bool is_lshift_required
Definition: transform.h:407
Base classes for the Relay IR.
Optional container that to represent to a Nullable variant of T.
Definition: optional.h:51
Array< Integer > axis
Definition: transform.h:314
int hop_length
Definition: transform.h:573
Array< Integer > axes
Definition: transform.h:409
TVM_DECLARE_ATTRS(RepeatAttrs, "relay.attrs.RepeatAttrs")
Definition: transform.h:269
int axis
Definition: transform.h:101
TObjectRef NullValue()
Create a NodeRef type that represents null.
Definition: attrs.h:84
TVM_DECLARE_ATTRS(TakeAttrs, "relay.attrs.TakeAttrs")
Definition: transform.h:202
Definition: transform.h:472
int win_length
Definition: transform.h:574
Integer rhs_end
Definition: transform.h:136
bool upper
Definition: transform.h:604
int n_fft
Definition: transform.h:572
Attributes used in reverse_sequence operators.
Definition: transform.h:298
Attributes used in reshape operators.
Definition: transform.h:120
Optional< Integer > index_rank
Definition: transform.h:185
TVM_DECLARE_ATTRS(OneHotAttrs, "relay.attrs.OneHotAttrs")
Definition: transform.h:507
Attributes for ShapeOf operator.
Definition: transform.h:464
Integer axis
Definition: transform.h:174
TVM_DECLARE_ATTRS(ScanopAttrs, "relay.attrs.ScanopAttrs")
Definition: transform.h:538
Array< Integer > output_shape
Definition: transform.h:485
Optional< Array< Integer > > end
Definition: transform.h:346
Integer axis
Definition: transform.h:268
Integer axis
Definition: transform.h:258
TVM_DECLARE_ATTRS(FixedPointMultiplyAttrs, "relay.attrs.FixedPointMultiplyAttrs")
Definition: transform.h:397
int k2
Definition: transform.h:517
Attributes used in concatenate operators.
Definition: transform.h:100
TVM_DECLARE_ATTRS(FixedPointMultiplyPerAxisAttrs, "relay.attrs.FixedPointMultiplyPerAxisAttrs")
Definition: transform.h:411
Integer batch_axis
Definition: transform.h:300
TVM_DECLARE_ATTRS(TriluAttrs, "relay.attrs.TriluAttrs")
Definition: transform.h:606
Container of constant int that adds more constructors.
Definition: expr.h:622
Integer axis
Definition: transform.h:199