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.");
155 TVM_ATTR_FIELD(axis).set_default(0).describe(
"The axis over which to select values.");
163 TVM_ATTR_FIELD(axis).set_default(0).describe(
"The axis over which to select values.");
172 "Accumulation mode of the scatter, either \"update\" or \"add\".");
181 .set_default(NullValue<Integer>())
182 .describe(
"The axis over which to select values.");
193 .set_default(NullValue<Integer>())
195 "The size of an indexing tuple, which is a fixed value. Only needed when the number of " 196 "indexting tuples is dynamic.");
208 .describe(
"The batch_dims over which to select values.");
210 .set_default(NullValue<Integer>())
211 .describe(
"The axis over which to select values.");
213 "Specify how out-of-bound indices will behave." 214 "clip - clip to the range (default)" 215 "wrap - wrap around the indices" 216 "fast - no clip or wrap around (user must make sure indices are in-bound)");
239 TVM_ATTR_FIELD(start).describe(
"Start of interval. The interval includes this value.");
240 TVM_ATTR_FIELD(stop).describe(
"Stop of interval. The interval does not include this value.");
253 "Indexing mode, either \"ij\" for matrix or \"xy\" for cartesian in which first two" 254 "dimensions are swapped.")
264 "The axis in the result array along which the input arrays are stacked.");
273 TVM_ATTR_FIELD(repeats).describe(
"The number of repetitions for each element.");
275 .set_default(NullValue<Integer>())
276 .describe(
" The axis along which to repeat values.");
285 "The number of times for repeating the tensor a." 286 "Each dim sizeof reps must be a positive integer.");
295 .set_default(NullValue<Integer>())
296 .describe(
"The axis along which to reverse elements.");
307 "The seq axis along which to reverse elements.");
310 .describe(
"The batch axis along which to slice the tensor.");
322 "The axis to squeeze in the input tensor." 323 "If `axis = None`, all axis of dimension 1 get squeezed;" 324 "Else, the dimension in axes get squeezed." 325 "It is an error if an axis does not has dimension 1.")
337 "Indices or sections to split into. Accepts an int or a tuple" 338 "If indices_or_sections is an integer, the input will be divided equally" 339 "along given axis. If such a split is not possible, an error is raised." 340 "If indices_or_sections is a tuple of sorted integers," 341 "the entries indicate where along axis the array is split.");
342 TVM_ATTR_FIELD(axis).set_default(0).describe(
"the axis to be splitted.");
355 TVM_ATTR_FIELD(begin).describe(
"Indices for begin of slice, begin index is also inclusive");
356 TVM_ATTR_FIELD(end).describe(
"Indices for end of slice, end index is exclusive");
358 "Stride values of the slice, a stride can be negative, which causes a reverse slice.");
362 "The slice mode [end, size]." 363 "end - The default slice mode, ending indices for the slice." 364 "size - The input strides will be ignored, input end in this mode indicates the size" 365 "of a slice starting at the location specified by begin. If end[i] is -1," 366 "all remaining elements in that dimension are included in the slice");
368 "Axes along which slicing is applied. When it is specified, the length of begin, end, " 369 "strides, and axes must be equal.");
378 "List of axes on which input data will be sliced according to the " 379 "corresponding size of the second input. By default will slice " 380 "on all axes. Negative axes mean counting in reverse.");
402 .describe(
"Multiplier of a fixed floating point number described as multiplier*2^(shift)");
404 "Shift of a fixed floating point number described as multiplier*2^(shift)");
414 TVM_ATTR_FIELD(src_layout).describe(
"The source layout of the tensor. (e.g. NCHW)");
415 TVM_ATTR_FIELD(dst_layout).describe(
"The destination layout of the tensor. (e.g. NCHW16c)");
426 "relay.attrs.AutoSchedulerLayoutTransformAttrs") {
427 TVM_ATTR_FIELD(src_layout).describe(
"The source layout of the tensor. (e.g. 1N32C112H112W)");
429 .describe(
"The destination layout of the tensor. (e.g. 1N2C112H112W16c)");
438 "relay.attrs.MetaScheduleLayoutTransformAttrs") {
440 "The order of the extents, for example, " 441 "let extents = [2, 3, 4], reorder = [0, 2, 1], and the shape of buffer A is (4, 6)" 442 "then A[i, j] will be first rewritten to " 443 "A[(6 * i + j) / 12, (6 * i + j) / 4 % 3 , (6 * i + j) % 4] according to the `extents`," 444 "and then reordered to A[(6 * i + j) / 12, (6 * i + j) % 4 , (6 * i + j) / 4 % 3]" 445 "according to `reorder`");
463 TVM_ATTR_FIELD(mask_value).set_default(0).describe(
"The masking value.");
465 "The axis of the length dimension. Can only be 0 or 1.");
474 TVM_ATTR_FIELD(output_shape).describe(
"Shape of the dense output tensor");
494 TVM_ATTR_FIELD(depth).set_default(1).describe(
"Depth of the one hot dimension.");
508 TVM_ATTR_FIELD(k1).set_default(0).describe(
"Lower limit (included) of the range of diagonals.");
509 TVM_ATTR_FIELD(k2).set_default(0).describe(
"Upper limit (included) of the range of diagonals.");
512 .describe(
"Bool, true iff super-diagonal is right aligned (left-padded).");
515 .describe(
"Bool, true iff sub-diagonal is right aligned (left-padded).");
525 TVM_ATTR_FIELD(axis).describe(
"The axis to operate over").set_default(NullValue<Integer>());
530 .describe(
"The first element is not included")
531 .set_default(
Bool(
false));
540 TVM_ATTR_FIELD(sorted).describe(
"Whether the unique elements are sorted").set_default(
true);
542 .describe(
"Whether to return an additional tensor with counts of each unique elements")
552 TVM_ATTR_FIELD(equation).describe(
"The einsum expression string");
565 TVM_ATTR_FIELD(n_fft).set_default(-1).describe(
"The size of Fourier transform");
568 .describe(
"The distance between neighboring sliding window frames");
569 TVM_ATTR_FIELD(win_length).set_default(-1).describe(
"The size of window frame and STFT filter");
572 .describe(
"Whether to return the normalized STFT results");
574 "Whether to return onesided result or fill with conjugate symmetry");
580 #endif // TVM_RELAY_ATTRS_TRANSFORM_H_ DataType dtype
Definition: transform.h:223
int rhs_begin
Definition: transform.h:135
Attributes used in stft operator.
Definition: transform.h:557
double a_max
Definition: transform.h:387
TVM_DECLARE_ATTRS(ReshapeLikeAttrs, "relay.attrs.ReshapeLikeAttrs")
Definition: transform.h:137
Integer axis
Definition: transform.h:292
TVM_DECLARE_ATTRS(StridedSliceAttrs, "relay.attrs.StridedSliceAttrs")
Definition: transform.h:354
Array< Integer > axes
Definition: transform.h:374
int lhs_begin
Definition: transform.h:133
TVM_DECLARE_ATTRS(MatrixSetDiagAttrs, "relay.attrs.MatrixSetDiagAttrs")
Definition: transform.h:507
data type cast
Definition: transform.h:61
Boolean constant.
Definition: expr.h:369
Attributes for FixedPointMultiply operator.
Definition: transform.h:396
int axis
Definition: transform.h:71
bool allowzero
Definition: transform.h:122
TVM_DECLARE_ATTRS(NdarraySizeAttrs, "relay.attrs.NdarraySizeAttrs")
Definition: transform.h:482
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:490
Attributes used in expand_dims operators.
Definition: transform.h:70
Relay expression language.
Attributes used in matrix_set_diag operator.
Definition: transform.h:501
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:536
DataType dtype
Definition: transform.h:491
int axis
Definition: transform.h:332
DataType dtype
Definition: transform.h:62
TVM_DECLARE_ATTRS(ShapeOfAttrs, "relay.attrs.ShapeOfAttrs")
Definition: transform.h:453
Attributes that specify a tensor.
Definition: transform.h:221
int axis
Definition: transform.h:460
Integer repeats
Definition: transform.h:270
Definition: transform.h:151
TVM_DECLARE_ATTRS(StackAttrs, "relay.attrs.StackAttrs")
Definition: transform.h:262
Array< Integer > newshape
Definition: transform.h:121
Definition: transform.h:186
Attributes used in transpose operators.
Definition: transform.h:112
Attributes used in one-hot operator.
Definition: transform.h:488
int32_t multiplier
Definition: transform.h:397
TVM_DECLARE_ATTRS(ConcatenateAttrs, "relay.attrs.ConcatenateAttrs")
Definition: transform.h:102
Definition: transform.h:176
Attributes for Clip operator.
Definition: transform.h:385
Definition: transform.h:159
int num_newaxis
Definition: transform.h:72
TVM_DECLARE_ATTRS(TileAttrs, "relay.attrs.TileAttrs")
Definition: transform.h:283
Attributes for StridedSlice operator.
Definition: transform.h:347
Optional< Array< Integer > > begin
Definition: transform.h:348
TVM_DECLARE_ATTRS(ClipAttrs, "relay.attrs.ClipAttrs")
Definition: transform.h:389
TVM_DECLARE_ATTRS(UniqueAttrs, "relay.attrs.UniqueAttrs")
Definition: transform.h:539
Helpers for attribute objects.
ObjectRef indices_or_sections
Definition: transform.h:331
Integer batch_dims
Definition: transform.h:187
Definition: transform.h:373
tvm::String slice_mode
Definition: transform.h:351
Optional< Array< Integer > > shape
Definition: transform.h:222
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:462
Array< Integer > window_shape
Definition: transform.h:40
Expr start
Definition: transform.h:233
TVM_DECLARE_ATTRS(EinsumAttrs, "relay.attrs.EinsumAttrs")
Definition: transform.h:551
Attributes used in einsum operator.
Definition: transform.h:548
String equation
Definition: transform.h:549
Attributes used in cumsum and cumprod operator.
Definition: transform.h:520
TVM_DECLARE_ATTRS(SparseToDenseAttrs, "relay.attrs.SparseToDenseAttrs")
Definition: transform.h:473
Integer batch_dims
Definition: transform.h:201
tvm::String mode
Definition: transform.h:203
Runtime primitive data type.
Definition: data_type.h:41
Attributes used in arange operators.
Definition: transform.h:232
TVM_DECLARE_ATTRS(GatherNDAttrs, "relay.attrs.GatherNDAttrs")
Definition: transform.h:190
Array, container representing a contiguous sequence of ObjectRefs.
Definition: array.h:270
Definition: index_map.h:154
Attributes used in reverse operators.
Definition: transform.h:291
TVM_DECLARE_ATTRS(ScatterAttrs, "relay.attrs.ScatterAttrs")
Definition: transform.h:154
Definition: transform.h:330
int axis
Definition: transform.h:39
TVM_DECLARE_ATTRS(ReverseAttrs, "relay.attrs.ReverseAttrs")
Definition: transform.h:293
double a_min
Definition: transform.h:386
int depth
Definition: transform.h:489
Attributes used in meshgrid operators.
Definition: transform.h:247
DataType dtype
Definition: transform.h:522
TVM_DECLARE_ATTRS(GatherAttrs, "relay.attrs.GatherAttrs")
Definition: transform.h:179
#define TVM_ATTR_FIELD(FieldName)
Declare an attribute field.
Definition: attrs.h:76
TVM_DECLARE_ATTRS(ArangeAttrs, "relay.attrs.ArangeAttrs")
Definition: transform.h:238
Attributes used in tile operators.
Definition: transform.h:281
DataType dtype
Definition: transform.h:236
bool sorted
Definition: transform.h:537
Reference to string objects.
Definition: string.h:124
String mode
Definition: transform.h:168
TVM_DECLARE_ATTRS(InitOpAttrs, "relay.attrs.InitOpAttrs")
Definition: transform.h:225
TVM_DECLARE_ATTRS(ScatterAddAttrs, "relay.attrs.ScatterAddAttrs")
Definition: transform.h:162
Managed reference to RelayExprNode.
Definition: expr.h:217
Expr stop
Definition: transform.h:234
Array< Integer > strides
Definition: transform.h:41
Integer lhs_end
Definition: transform.h:134
TVM_DECLARE_ATTRS(SqueezeAttrs, "relay.attrs.SqueezeAttrs")
Definition: transform.h:319
TVM_DECLARE_ATTRS(SliceLikeAttrs, "relay.attrs.SliceLikeAttrs")
Definition: transform.h:376
Integer axis
Definition: transform.h:521
Array< Integer > reps
Definition: transform.h:282
bool normalized
Definition: transform.h:561
Integer seq_axis
Definition: transform.h:302
TVM_DECLARE_ATTRS(ScatterNDAttrs, "relay.attrs.ScatterNDAttrs")
Definition: transform.h:170
bool super_diag_right_align
Definition: transform.h:504
bool return_counts
Definition: transform.h:538
TVM_DECLARE_ATTRS(StftAttrs, "relay.attrs.StftAttrs")
Definition: transform.h:564
Base class of all object reference.
Definition: object.h:511
DataType NullValue< DataType >()
Definition: attrs.h:90
Integer axis
Definition: transform.h:152
TVM_DECLARE_ATTRS(CastAttrs, "relay.attrs.CastAttrs")
Definition: transform.h:64
Attributes used in sparse_to_dense operator.
Definition: transform.h:470
std::string indexing
Definition: transform.h:248
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:562
TVM_DECLARE_ATTRS(SplitAttrs, "relay.attrs.SplitAttrs")
Definition: transform.h:334
Attributes for ndarray_size operator.
Definition: transform.h:479
Optional< Array< Integer > > axes
Definition: transform.h:352
Definition: transform.h:167
TVM_DECLARE_ATTRS(MeshgridAttrs, "relay.attrs.MeshgridAttrs")
Definition: transform.h:250
Attributes used in stack operators.
Definition: transform.h:260
int32_t shift
Definition: transform.h:398
Definition: transform.h:200
Attributes used for the sliding_window operator.
Definition: transform.h:38
double mask_value
Definition: transform.h:459
DataType dtype
Definition: transform.h:480
The base class of the all the Use "curiously recurring template pattern".
Definition: attrs.h:834
DataType dtype
Definition: transform.h:451
bool sub_diag_right_align
Definition: transform.h:505
TVM_DECLARE_ATTRS(ReverseSequenceAttrs, "relay.attrs.ReverseSequenceAttrs")
Definition: transform.h:305
int k1
Definition: transform.h:502
Expr step
Definition: transform.h:235
Attributes used in repeat operators.
Definition: transform.h:269
Optional< Array< Integer > > strides
Definition: transform.h:350
Attributes used in squeeze operators.
Definition: transform.h:315
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:317
int hop_length
Definition: transform.h:559
TVM_DECLARE_ATTRS(RepeatAttrs, "relay.attrs.RepeatAttrs")
Definition: transform.h:272
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:205
Definition: transform.h:458
int win_length
Definition: transform.h:560
Integer rhs_end
Definition: transform.h:136
int n_fft
Definition: transform.h:558
Attributes used in reverse_sequence operators.
Definition: transform.h:301
Attributes used in reshape operators.
Definition: transform.h:120
Optional< Integer > index_rank
Definition: transform.h:188
TVM_DECLARE_ATTRS(OneHotAttrs, "relay.attrs.OneHotAttrs")
Definition: transform.h:493
Integer axis
Definition: transform.h:160
Attributes for ShapeOf operator.
Definition: transform.h:450
Integer axis
Definition: transform.h:177
TVM_DECLARE_ATTRS(ScanopAttrs, "relay.attrs.ScanopAttrs")
Definition: transform.h:524
Array< Integer > output_shape
Definition: transform.h:471
Optional< Array< Integer > > end
Definition: transform.h:349
Integer axis
Definition: transform.h:271
Integer axis
Definition: transform.h:261
TVM_DECLARE_ATTRS(FixedPointMultiplyAttrs, "relay.attrs.FixedPointMultiplyAttrs")
Definition: transform.h:400
int k2
Definition: transform.h:503
Attributes used in concatenate operators.
Definition: transform.h:100
Integer batch_axis
Definition: transform.h:303
Container of constant int that adds more constructors.
Definition: expr.h:404
Integer axis
Definition: transform.h:202