Age | Commit message (Collapse) | Author |
|
Also update copyright year on license.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I6acf8b11990e436c4e2ceffa9c044a34a577a5ae
|
|
Needed to supply bias for 16-bit convolutions
Change-Id: Iad027bf755ed2b1a530d4964288c86ec19070e6f
|
|
Add a check on the error bias for dot
product calculations and slightly increase the
error variance bound for dot products.
Change-Id: I518704d1fb1b109695b0f90f7ca6733850e6a8c7
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
|
|
This commit removes the maximum rank 4 restriction
from REVERSE, SLICE and TILE operations so that the
new maximum is now MAX_RANK.
In doing so some rank inconsistencies were also
cleaned up, including:
* Adding a minimum rank to the PAD op description
* Adding level limit checks to SLICE and TILE ops
* Adding checks for rank(shape1) == rank(shape)
for TILE and TRANSPOSE ops
* Add tensor_size(shape1) == tensor_size(shape)
check for TRANSPOSE
* Replace tensor name with shape name in pesudo
code where necessary
Change-Id: I94bb8ee0b6b720b2ba5a884ce9300dca6281245a
Signed-off-by: Luke Hutton <luke.hutton@arm.com>
|
|
The accumulator size cannot be determined from the current signature,
so a new attribute is needed to describe the possible accumulator
sizes.
Change-Id: I6de81b9ef2bb62a1ca726866f6561c6ae44904aa
|
|
This patch contains a draft of the
Main Inference profile floating-point
conformance requirements.
Change-Id: Ib1201fff7f4015668b2de6dccf4cd85b419c3f76
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
|
|
Align with the definition for LOGICAL_RIGHT_SHIFT which was clearer.
Change-Id: I9d8f33b54fb982a09597078eb14a7730c488bcef
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
The expected output shape of RFFT2d should be (N, H, W/2+1) as
opposed to (N, H/2+1, W/2+1).
Change-Id: I66d830f1ffa86417b57572b3cd904db0290cac42
|
|
index_t is globally defined as int32_t.
Signed-off-by: Kevin Petit <kevin.petit@arm.com>
Change-Id: I86ed2d42d488fb8e7630e98e3564f14ba5664f8c
|
|
cmp_t is only used in the definition of SELECT and always defined to bool_t.
This removes a special case in generators.
Signed-off-by: Kevin Petit <kevin.petit@arm.com>
Change-Id: I9e7992bbfdf5c7fafdd55df90feb4dcbcdee2972
|
|
Also update to version 0.51.0 draft
Signed-off-by: Kevin Petit <kevin.petit@arm.com>
Change-Id: Ib0754169b96d2f3110067e0bdc0bb3f309ec1951
|
|
In preparation for the 0.50.0 release
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: Ib7cda8120da40daef4c99e4614e62734512988c3
|
|
Condition tensors used by the control
flow operations must contain a single
element.
Change-Id: Ie3cb8f0b4a4149cee1b3aacbfa720dd4cad02fbc
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
|
|
Add definition of Level 1.0.
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: I1b34ae22396f273cc5ecdf99198fdbece6e2809c
|
|
No such attribute.
Signed-off-by: Kevin Petit <kevin.petit@arm.com>
Change-Id: If1b1ece15589e9bf07971542783f51294a05aab9
|
|
Zero-point addition after rescale is not
permitted to overflow an int32_t.
Change-Id: I7bc99a9296dce9d48abe271e68f9069425c9c270
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
|
|
Tensor co-ordinate indices are signed 32-bit values
in this version of the specification.
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: I6b8dde500ef9c4c4c5688c1a43f8d658863e4a49
|
|
The restriction on border limits in the ERROR_IF is
-16 * scale_y_n <= border_y < scale_y_n
and
scale_y_n <= (1 << 11)
Together, these imply
-(1 << 15) < border_y < (1 << 11)
which fits in 16 bits
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I843f29a5efd8ea3fe559d83d33a3280b39bc7068
|
|
BF16 <-> FP32
FP16 <-> FP32
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I8b8d31dc5debb29b609e927a26fabe9ce71f81cd
|
|
Change resize_t to use the same type as in_t and out_t
for floating point data.
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: I3214d92477688b95ba572f22d34aab3fef7d0f82
|
|
Change-Id: I5206e59c6dd2212796a8d888d4ef8986ad1dfd2d
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: Iee620079018191e3e58627c6d779b94d81d84727
|
|
Also be consistent to use the term 'rank'
rather than 'dims'.
Change-Id: Ica827fcfd44e9735da2d1a4ddb8cb1fa04c6479b
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
|
|
Increasing output pad values reduces the size of the output
region in the old definition. This is counter-intuitive.
This patch inverts the sign of the output pad values such
that increasing values leads to increasing pad. It also
specifies a pad limit range of output pad values that
give an output dependent on the whole input.
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: I47ff4ee67942aec9e728f0b42d87d20117f0b97a
|
|
tosa.xml had the wrong mode for 16-bit MATMUL.
Change-Id: I1feeac9b9a5f61c53d64ae826aa5727da21e5dce
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
This changes the arguments for the convolution operators to
be inputs rather than attributes for all profiles.
Change-Id: I9d5fd1ae721271b881179765dc44e966208150da
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
This converts portions of the asciidoc specification into an xml
document and schema. For the html and pdf outputs, the xml is
converted to asciidoc files that are included into the existing
specification.
The xml allows future automated uses of the tosa specification
while maintaining rough compatibility with the existing document.
No significant functional changes are included in this change.
Change-Id: I7f1f95c527638e270c157d58fcdec6a3510daea5
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
Check output shape matches the padded
input shape.
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: I8e335ce9b086a36d9e38aa332ecc88782e040cc6
|
|
Define scaling factor as a ratio of integers so
that output dimensions can be derived from input
dimensions without rounding.
Change-Id: Iddfd9ff549edf2963bf22047e8641a348cadb35f
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
The current value is too strict, and can lead to some cases to fail.
By making the new value limit between (-1 << shift-1) and (1 << shift-1),
we still restrict the input value a range that works for optimized implementations
that left shift their values before multiplying.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: Ib4f49732e361418884888d398087560da3ccd6e8
|
|
Use branch v0.30 and tag 0.30.0 for previous version.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I1469a9f631e44488142a1c0536e1d4be10153958
|
|
Also update copyright date for specification.
Change-Id: I72d2423247f62fa304d0c0535ef33defb903b74e
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
The current version does not match the reference model or
serialization library. Revert to the old behavior until the
model is updated and tested that it works correctly.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I237dc3e94e6c31337073524527da75084ba7b578
|
|
Define operations in terms of common floating-point data
types. Definitions for the data types are in the introduction.
Added a section to describe status of the different profiles.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: Iac57026806acfb7913f40af61176322fb02b7cc1
|
|
The information on quantization and numerics was out of date.
The tensor access helpers were also consolidated and moved into
their own section in the pseudocode chapter.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I472e674ed88f4a3ef379010cf50b13cf8afa5f17
|
|
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: Ib953cc4b635469034300662b9ae997d0a1bd58a7
|
|
The captions for the images used 'direction', instead of 'inverse'
which is the attribute name.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I4d8ab9642288efb984d03b7862068e09334ce8f6
|
|
Adds FFT2D for complex->complex FFT
Adds RFFT2D for real->complex FFT
Change-Id: Id50f96b8f66f17c3020767c002f0c1f41a76d62e
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: Ibb60c192ea60b665cec8d91f7de7cc6e3f553fa6
|
|
Remove the calculation of a -1 dimension from the operator.
Calculates the new coordinates, and adds the proper
tensor_read/tensor_write for the data.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: Iad1d83c170732bdfb3652dead9044809168b23d2
|
|
Replicates multiples times, not multiplies.
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I78c19013d08295171a20fead17661a8f9ea68ac8
|
|
An unsigned 16-bit integer data type for use with image networks.
Limited to only operating with the RESCALE operator for conversion
to signed int16.
Zero point can be 0 or 32768 in the RESCALE to allow for no loss of
precision (by subtracting 32768), or keeping all values as positive,
(zero point=0) with scaling/clipping as defined in the other RESCALE
arguments.
Change-Id: Id1aebab68fa207f8f8cc235fc3fa5d050307198e
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
They are arrays of multipliers and shifts to handle per channel
scaling.
Change-Id: I4451a87ef4d710fcb93745c8df73ec41752415c0
Signed-off-by: Eric Kunze <eric.kunze@arm.com>
|
|
Signed-off-by: Kevin Petit <kevin.petit@arm.com>
Change-Id: I15ba640629433f87648ece24ffe723a60c8aaf11
|
|
Define scaling factor as a ratio of integers so
that output dimensions can be derived from input
dimensions without rounding.
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: Ie4c1a323dec80379fb0d6db1767777e6c9760a11
|
|
Output dimensions should have been worked out correctly by the end
of the compilation to TOSA
Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com>
Change-Id: I0193958d7d51bf1c6915a0953daa514f86516710
|
|
Clarify for types previously definded as int
the width assumed by the specification.
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: Ied62d4803a4323a600d33cff09752a76ca48f18d
|
|
It should be an attribute.
Signed-off-by: Kevin Petit <kevin.petit@arm.com>
Change-Id: I2c9c73605486a44297dad105dbdb94abfb5903fb
|
|
- The input/output types for CAST should be in_t* and out_t*
- The shape for the multiplier and shift arguments to RESCALE was in the wrong column
Change-Id: I0a3c4ffed15e36f0c4bf8fc9b4a84df5a17a5523
Signed-off-by: Kevin Petit <kevin.petit@arm.com>
|
|
For each tensor op clarify how the output dimensions
of output height (OH) and output width (OW) relate
to the input height (IH) and input width (IW).
Signed-off-by: Dominic Symes <dominic.symes@arm.com>
Change-Id: Iad36041f54e439c944cacf08afac5567dd2bad3f
|