This project is mirrored from https://review.mlplatform.org/tosa/specification.
Pull mirroring updated .
- Jan 31, 2024
-
-
Eric Kunze authored
Rework of the shape operations. Shape operations are now done in shape specific operators rather than being based on type. shape_t is reworked to a list of size_t values. Signed-off-by:
Eric Kunze <eric.kunze@arm.com> Change-Id: I2fca0728f9caa6a6fc34a8ce9e389bb581eea959
-
- Jan 28, 2024
-
-
Signed-off-by:
Kevin Petit <kevin.petit@arm.com> Change-Id: Icb824233e5be84ac0eb693459b65441e9ae6c545
-
- Jan 25, 2024
-
-
Eric Kunze authored
Be explicit that the value is converted to int32 and then clamped to the output type range. Also remove use of apply_clip, replacing with either apply_clip_s or apply_clip_u Signed-off-by:
Eric Kunze <eric.kunze@arm.com> Change-Id: I0efc7f4d653c1bef13c9989cfe2647208dad9617
-
- Jan 24, 2024
-
-
Kevin Petit authored
Signed-off-by:
Kevin Petit <kevin.petit@arm.com> Change-Id: Ieb895e834d1f3b512a666b062b963b08f82c8a24
-
- Jan 23, 2024
-
-
Kevin Petit authored
Signed-off-by:
Kevin Petit <kevin.petit@arm.com> Change-Id: Ifc17c8ab508a0d27f5f832fa76f7dc9c1ff57dbd
-
Kevin Petit authored
Signed-off-by:
Kevin Petit <kevin.petit@arm.com> Change-Id: I7cad7d2bc6212e1765fbe3027abfb1fe37111445
-
Kevin Petit authored
Change either the name in the pseudocode or XML to what feels more "natural" or in line with other related names. Change-Id: Ic12a0418a80642c548c288b6ba26a4603b94fedc Signed-off-by:
Kevin Petit <kevin.petit@arm.com>
-
Kevin Petit authored
Change-Id: Ic362e5cbc607d1b7560c09326fcebcba606454ce Signed-off-by:
Kevin Petit <kevin.petit@arm.com>
-
Kevin Petit authored
- Some operators were using True and False. - Document the use of true and false in the definition of the boolean number format. Signed-off-by:
Kevin Petit <kevin.petit@arm.com> Change-Id: Ic4c16c8527d46ca01d22e3c70c5371821a726df8
-
- Jan 19, 2024
-
-
Axis is a dimension index of the input tensor, but is used to index the output tensor. Signed-off-by:
Thomas Preud'homme <thomas.preudhomme@arm.com> Change-Id: Ie50f3921153e01437fe763b5d2b6cfaa06049f25
-
Kevin Petit authored
The semicolons had no semantic meaning. Signed-off-by:
Kevin Petit <kevin.petit@arm.com> Change-Id: I9447ea24c82a32c8bfe07fcc560f34a696e59831
-
- Jan 16, 2024
-
-
Kevin Petit authored
- Add missing parenthesis in ARITHMETIC_SHIFT_RIGHT - Add missing semicolons - Remove stray dot in VARIABLE_WRITE Change-Id: I28ab7c80c735995437588fffeffb1f12d112f3ec Signed-off-by:
Kevin Petit <kevin.petit@arm.com>
-
- Jan 15, 2024
-
-
Kevin Petit authored
This makes it easier to process the pseudocode automatically. Change-Id: I84394192598e589de07d43a7af60b96788e14f86 Signed-off-by:
Kevin Petit <kevin.petit@arm.com>
-
Dominic Symes authored
TANH can have cancellation between exp(x) and exp(-x) for small abs(x). To allow for this, a lower bound of 0.5*exp(-normal_fraction<in_out_t>) is set for the error bound. The TANH formula also can contain 4 exp() values, so the error bound is increased to 4 multiplied by the exp() error bound. SCATTER output size K must be as least as great as the number of indices W, as each index is distinct. Change-Id: I8d1f1c866bd59d8140cf7db76404f5006a04a3f3 Signed-off-by:
Dominic Symes <dominic.symes@arm.com>
-
- Jan 09, 2024
-
-
Eric Kunze authored
i48_t is 48-bit, not 32-bit. Signed-off-by:
Eric Kunze <eric.kunze@arm.com> Change-Id: Icd602931ffb5d74842359fae2a8885e96b85bf59
-
Dominic Symes authored
Update the REDUCE_PRODUCT conformance description to be consistent with EXP, POW, TANH, SIGMOID. Signed-off-by:
Dominic Symes <dominic.symes@arm.com> Change-Id: I083c41ce09e70b51d07cfea30a4bbc4dff4a8657
-
- Jan 08, 2024
-
-
Eric Kunze authored
Cannot raise a negative base to a non-integral power. Signed-off-by:
Eric Kunze <eric.kunze@arm.com> Change-Id: I851006abc30bccb612b2a41e27f5c259bb221e41
-
- Dec 15, 2023
-
-
Dominic Symes authored
Add i4_t and i48_t to the list of types supported by the IDENTITY operator. Signed-off-by:
Dominic Symes <dominic.symes@arm.com> Change-Id: Id0eeb5f665345e6fdb975b98af4926efc6412afc
-
- Dec 04, 2023
-
-
Dominic Symes authored
Change SIGMOID, TANH precision to allow an implementation using EXP. The bound is based on the EXP bound. Change-Id: I19582b31753ac614a1064a1b81961dbc54acf823 Signed-off-by:
Dominic Symes <dominic.symes@arm.com>
-
- Nov 28, 2023
-
-
Dominic Symes authored
For bf16_t data type, REDUCE_SUM is changed to use fp32_t as the accumulator type to be consistent with CONV2D. For other data types the accumulator type is the same as in_out_t (and so no change). Also correct the rank limit text. Update reduction pseudo-code to be consistent with REDUCE_SUM. Change-Id: I9923066be7d1b7edb0efd9bcf3365b4af9501beb Signed-off-by:
Dominic Symes <dominic.symes@arm.com>
-
- Nov 22, 2023
-
-
Dominic Symes authored
Change RSQRT precision to 2 ulp to allow unfused square root and reciprocal. Also fixes: - a typo in EXP and POW conformance - exp2() handling of large negative values - symmetry about 0 of test set S=4 data generation - err_bnd cannot be negative - ulp not taken for reference value of 0 Change-Id: Idaeeb7b615f1634e8e09dea5f82827039780b462 Signed-off-by:
Dominic Symes <dominic.symes@arm.com>
-
- Nov 04, 2023
-
-
Eric Kunze authored
Previous description referred to nonexistant input tensor Signed-off-by:
Eric Kunze <eric.kunze@arm.com> Change-Id: I162ab05ed1db7491ed29ddeabd3490e9ff7ee39b
-
- Nov 02, 2023
-
-
Jerry-Ge authored
- CustomOp's domain attribute name has been updated to domain_name - Forget to update that for the description text part. Signed-off-by:
Jerry Ge <jerry.ge@arm.com> Change-Id: Ifa731125dc2f224ecc1cd661e238c7b27945db68
-
- Nov 01, 2023
-
-
- "operator" is a reserved keyword in C++ - Update the attribute names to avoid those conflicts Signed-off-by:
Jerry Ge <jerry.ge@arm.com> Change-Id: Iecb1edc50eb1a1232e05250b8baa79cfceb8cd61
-
Dominic Symes authored
EXP and POW are complex to implement in a precise number of ulp and a more flexible precision is given. Additionally, the test generater S=5 has the bias values changed to zero. If the bias values are non-zero then a bias for all output tensor elements of the channel can affect the dot product bias test. The numeric accuracy helpers are updated for bf16. Signed-off-by:
Dominic Symes <dominic.symes@arm.com> Change-Id: Ia46a2ef4d577244b6983a08ce850de3db9573a42
-
- Oct 30, 2023
-
-
Eric Kunze authored
Bias broadcast was introduced earlier, this adds text to the bias argument to call out the broadcast when only a single data element is given for broadcast. Signed-off-by:
Eric Kunze <eric.kunze@arm.com> Change-Id: I684afbe642e9b9cfb9f7c7e9b5bb4944019f206a
-
- Oct 09, 2023
-
-
Dominic Symes authored
Clarify how to compare with an error range of a given number of ulp in this specification. Denormals may be flushed to zero. Signed-off-by:
Dominic Symes <dominic.symes@arm.com> Change-Id: I1158e777030c4770d74f1acff84ab98e4a3420ac
-
- Sep 27, 2023
-
-
Eric Kunze authored
REDUCE_MIN, REDUCE_MAX, SELECT did not have an accuracy bound defined. Signed-off-by:
Eric Kunze <eric.kunze@arm.com> Change-Id: I0fea091752dfcdc2bb55eae7becc68b9c1860e9e
-
- Sep 21, 2023
-
-
Dominic Symes authored
The output shape can be calculated from the input shape and attributes so the out_shape argument is redundant. Change-Id: I7e6b0b7f03dc75ccdf967261fad4185c513ed187 Signed-off-by:
Dominic Symes <dominic.symes@arm.com>
-
- Sep 13, 2023
-
-
Eric Kunze authored
Signed-off-by:
Eric Kunze <eric.kunze@arm.com> Change-Id: I323bf261ac4a5219ee881a31e2840356ba32ab9a
-
- Sep 12, 2023
-
-
Dominic Symes authored
Also express the fp32_t acc_min_normal calculation without a double negation. Signed-off-by:
Dominic Symes <dominic.symes@arm.com> Change-Id: I34ba274264bc511e60f0e01601d5d0a3f983e594
-
- Sep 11, 2023
-
-
Eric Kunze authored
Define idiv_floor to give equivalent behavior to the floating-point floor function for image coordinate calculation. Change-Id: Id6268794b1e3ce5cc1114bda74dd06b892457a8e Signed-off-by:
Eric Kunze <eric.kunze@arm.com>
-
- Sep 07, 2023
-
-
Dominic Symes authored
Update the error bound for dot product operations to allow floating point accumulators where denormal values are flushed to zero. Change-Id: I1d5805f0ad613ca9d78c6a6da12e31d7df5f6cc4 Signed-off-by:
Dominic Symes <dominic.symes@arm.com>
-
- Aug 18, 2023
-
-
Eric Kunze authored
CUSTOM operators are still implementation specific, but now have attributes added to identify and namespace the underyling operation. Signed-off-by:
Eric Kunze <eric.kunze@arm.com> Change-Id: I8db2fffd0b34958bd8c718633a130941f32f962b
-
- Aug 17, 2023
-
-
Eric Kunze authored
Integer inputs and outputs to TOSA operators are now defined as signless values. In most instances the operator will used signed arithmetic as indicated in previous versions of the specification resulting in little functional change to the specification. New attributes have been added to the RESCALE operator to indicate whether the input and output values should be treated as signed or unsigned. Explicit use of static_cast, sign_extend, zero_extend and truncate are added to the pseudocode to avoid ambiguity. Change-Id: I71c67d3e5aeaabc418c768f821fce6ee3eebb65b
-
- Aug 16, 2023
-
-
Dominic Symes authored
Adds a local_bound flag to convolution operations. If the local_bound flag is true then the output accuracy for floating-point is measured relative to the input tensor data local to the particular convolution output. If the local_bound flag is false then the output accuracy for floating-point is measured relative to the whole input tensor. This accuracy measure is the default and more approapriate for implementations with non local optimizations (such as transform based fast convolutions). Signed-off-by:
Dominic Symes <dominic.symes@arm.com> Change-Id: I64e3e4981a63e26e6391149e28d5d71e7ef5560a
-
Dominic Symes authored
Shape inference derives the shape of tensors in the graph from input shapes. Operations such as RESHAPE may need calculations to derive the new tensor shape. This patch: - Adds a DIM operator to get the size of a tensor in a given axis as a rank 0 tensor of type shape_t - Allows RESHAPE to take a 1D shape tensor as input for the new shape - Allows RESIZE, TILE, PAD to take input sizes based on shape tensors. - Allows ADD, SUB, MUL, INTDIV to operate on rank 0 shape_t tensors - Allows CONCAT to concatenate 0D shape_t tensors to a 1D shape_t tensor - Adds CONST support for shape_t tensors In this version of the specification shape tensors must be resolvable to constants at backend compile time. Signed-off-by:
Dominic Symes <dominic.symes@arm.com> Change-Id: I484bd44452453b5e05d0d8a82689564587b224e4
-
- Aug 15, 2023
-
-
Eric Kunze authored
We've seen networks with >64 scale ratios that we would expect to run on systems implementing the 8K level. Raise the ratio to 256. Change-Id: I5a72a533b2125fe56ffedc8b8d5c31bb96f60f10 Signed-off-by:
Eric Kunze <eric.kunze@arm.com>
-
- Aug 11, 2023
-
-
Jerry-Ge authored
Signed-off-by:
Jerry Ge <jerry.ge@arm.com> Change-Id: I63a4c1202a1eddcdedb222e64cac34557647ff21
-
- Aug 07, 2023
-
-
Dominic Symes authored
Bias tensors often have the same value for each channel. To allow for this the number of bias channels, BC, is permitted to be 1 or the output channel size. If BC == 1 then the bias is broadcast. Change-Id: I3262a6c699bd045f44201e2a123f9b792b9f67c9 Signed-off-by:
Dominic Symes <dominic.symes@arm.com>
-