Age | Commit message (Collapse) | Author |
|
Also change acc_t to out_t when the value is being used as an output.
This should make the argument tables easier to follow.
Change-Id: I2a57f3c4eaf937f29da785ff5c11576663a39494
|
|
Operators which use the zero-point functionalty for 8-bit integer
processing are updated to do the zero-point subtract in their
pseudocode.
Note that the PAD operator no longer takes a zero point argument,
and instead requires callers to account for the zero point in the
pad_const argument.
Change-Id: I3bca1cae85aa2093000c420f0433633c347a29de
|
|
Change-Id: I8935624362b3b8d1b125ccb801d039b97e88a2ef
|
|
* Add ERROR_IF checks to ensure that inputs have the correct rank,
dimension lengths, and a suitable axis value
* Make REVERSE REQUIRES check into an ERROR_IF
* Some minor typo/formatting fixes
Change-Id: Ie133788ca7e1deab194ba5ef97e47c39cdd170b6
Signed-off-by: Matthew Haddon <matthew.haddon@arm.com>
|
|
* refactored error_if checks to avoid logic overlap
* Added check to ensure that size dimensions match
output dimension
* Defined the rank() function in pseudocode helpers
Change-Id: I56bf06252d9149d449c984126e8f2025a07d6034
Signed-off-by: Matthew Haddon <matthew.haddon@arm.com>
|
|
The TOSA specification doesn't have quantized types.
Without those types, it is cleaner to move effects of quantization
such as the zero points into the standard list of arguments, rather
than existing as a separate table.
Change-Id: I18ea2959e9d3e4a3e9a0ead7a8ca319bb4426a47
|
|
PAD now takes an additional attribute, with the padding value.
Will generally be zero, but other values are allowed.
tensor_read now requires the coordinates to be within the
given tensor, with unpredictable behavior occurring if an access
outside of the tensor occurs. Callers of tensor_read are expected
to check the coordinates and take the appropriate action. The
primary impact of this is to move the responsibility for padding to
each operator. In practice, this is expected to not be a functional
change, but a cleanup to make the behavior more clear.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I4f21ca9a13d82d422bbd66c400f23aa9a0bd2aa0
|
|
Catch zero and negative sized tensors.
Clarify configuration of bool_t in the reference model.
int4_t limitations on -8 to stay symmetric around 0.
Pad values must be >= 0.
Stride,dilation values must be >= 1.
Change-Id: Idb6ef740f855912a8340475ba319816f90c9b051
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: I2e25d0467843adb078d5ab9fd681af40b2ffa52e
|
|
REQUIRE is a direct replacement for the asserts, and uses
the unpredictable() function in pseudocode to describe the required
conditions for operators
Change-Id: I35dc81e083d8e41f16728d992bdb8b06b0271226
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
This also adds a restriction on CONCAT to have all inputs be the
same rank.
Update the ARGMAX pseudocode to handle corner cases properly and
use axis/rank consistent with other operators.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I941ac172ee79424ac04d562cedebb75da76659a5
|
|
They are all now [source,c++] and use ---- as the
delimiter.
Also made the pseudocode indentation consistent (4 spaces)
in the introduction sections.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I1287a60cfeae8b7e3c63b9fc8885b1ebf3d3386d
|
|
When reading tensor values with zero point, the returned value
has one more bit than the original to account for zero point.
Update cases of apply_clip to properly represent the types
involved.
Change-Id: I60c17b1b244c34b4f04f042807936ae0f282ce93
|
|
Attempt to get consistent across the pseudocode.
Change the data types to all be intN_t instead of some cases of intN.
Use float_t as the general floating point data type.
Be consistent on use of the term "floating-point"
Move general pseudocode helpers to their own section.
Change-Id: Ie77666cd3ee438c71f39c62b9c424fe687b0bb51
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
Originally only a pair of input tensors were allowed.
This aligns with what the frameworks do, and simplifies the
translation of frameworks into TOSA and allows compilers
to view the output as a whole.
Change-Id: Id4461abdf0cc763e84e086142222e87d28cd8afc
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
The aint8 type represented an asymmetrically quantized range.
With the change to move scaling fully into the RESCALE operator,
the aint8 and int8 types didn't have significant differences in
their use with operators. Unifying to a single data type makes
things simpler.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I3ee89cbdafdc61293ef1f1bec52398d744e716a1
|
|
Add values attribute to CONST operator.
Remove stale references to input tensor 0 and 1.
Remove out_t types where in and out are guaranteed
to be the same type.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I75a8eb4dee67afbee3652d9e937aa0b82318dbd0
|
|
Comparison ops, similar to the other elementwise ops, can operate
on tensors of any rank.
For those operators with rank limitations, make them consistent and
remove "dims".
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I33eb00122cec4c6625f080f9ed640f1d874fae87
|
|
Complete the function naming change from
dimensions() to rank(). Fix MATMUL to
use apply_add() for additions, consistent
with the other operations.
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: I6ba84cf8b016505e8477b04dd00f2a2bf3194492
|
|
Simplify the reduction and reverse reference
by apply one axis at a time and default to
keep_dims. (Changes to shape can be done
separately with RESHAPE)
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: I590bdb6bc05b1c673f86e3f45f0a43536d8f362a
|
|
Change-Id: I7c528ebf7e78759ada4bb951b2471c367d3f4525
|