aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-09-07Fix batch size if target shape set for SCATTER operatorMatthew Haddon
* max batch size ignored if target shape is set * W size reduced if large input tensor used Signed-off-by: Matthew Haddon <matthew.haddon@arm.com> Change-Id: I13472ab768fa93a1d0b9e28964f56ec4a06dbdfd
2021-08-31Rename DIV operator to INTDIVMatthew Haddon
* In line with the TOSA spec the DIV operator has been renamed INTDIV Signed-off-by: Matthew Haddon <matthew.haddon@arm.com> Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I1dc6e88220ef26b24487675600b6cd1e5bb8b0f7
2021-08-31Set TILE multiple to one if input dimension is largeMatthew Haddon
* Sets multiple of input dimension to one if the dimension of the input tensor is large to reduce ouput tensor size. Change-Id: I2ebcecf438282de032a33e0cf4b3847cbf94440d
2021-08-25Restore expectedFailure to test description filesJared Smolens
- Updated example tests, added missing npy files - Updated README file with fields in desc.json Change-Id: I5651ed5260866a8381adf620fb6dd6405cb2833b
2021-08-20Replace node level check ASSERT_MSG_NODE()/FATAL_ERROR_NODE() with REQUIRE() ↵Kevin Cheng
or ERROR_IF() - Adding return code enum class: {VALID, UNPREDICTABLE, ERROR} - Runtime errors (e.g. memory allocation failure) will abort immediately, or will return one of the three return codes Part of the codes are re-written to pass REQUIRE() to the top-level (e.g. apply_scale_32/16()) - Update setExpectedFailure() to setExpectedReturnCode() on test generation script - Update test regression script to interface with reference model change Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: Ia063c936bcb2a54d6e379a5bb6801aa72d1186f1
2021-08-20Make MATMUL output shape randomMatthew Haddon
* Currently when a target shape is specified, the W value of the input tensor is always equal to N, this is not the case when no target shape is defined. * A random value for W is generated every time. Signed-off-by: Matthew Haddon <matthew.haddon@arm.com> Change-Id: I8f8ecb32308cef4a1ece1871f76ebbd5f0cf881f
2021-08-19Produce Concat tests with multiple input tensorsMatthew Haddon
* Concat tests now contain between 2 and 5 input tensors concatenated together * Both input and const tensors are used as inputs to the operator * Option to add in const tensor inputs (this is slow), defaults to original behaviour Signed-off-by: Matthew Haddon <matthew.haddon@arm.com> Change-Id: I2a0cc622d31aceab8d24521668d0aae040ba73b1
2021-08-12Support int4 weights read. Added conv2d int8xint4 in test generation.Kevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I61620f160c7dad6aac5fcc3da0a6e97f3bae5b40
2021-08-12test gen PAD agPad fix to cover all pad valuesLes Bell
* encode pad in the test name with leading zeros Change-Id: I7b1cc04014d390e707de099c5f78f93f5f344d69 Signed-off-by: Les Bell <les.bell@arm.com>
2021-08-12Add support for UINT8Matthew Haddon
* RESCALE can now produce tests with UINT8 as the input/output datatype. Signed-off-by: Matthew Haddon <matthew.haddon@arm.com> Change-Id: I0a5d7b3c6dd7c2501d14e5d558b1f18e5e967fa9
2021-08-12fully_connected test OC independent of input shapeLes Bell
Change-Id: Ib299b78abe0e5c2ef0aeff9d853e583078768e1c Signed-off-by: Les Bell <les.bell@arm.com>
2021-08-10fix output type for resize in test genLes Bell
Signed-off-by: Les Bell <les.bell@arm.com> Change-Id: I9daf8fd691af74500819718519caac30c966a1f2
2021-07-29fix quantization zero-point generationLes Bell
* for int8 and uint8 only * not for int16 * pass all data types to the quantizaion generator functions as some operators (all convolutions, fully_connected) may use different types for the input and weight tensors * also allows input type filtering for convolution operators Change-Id: Iea3d00f03807a8db35b40d4e8988929ec6549b44 Signed-off-by: Les Bell <les.bell@arm.com>
2021-07-29Fix random INT4 and INT8 dtype ranges and clamp attrsJeremy Johnson
Change range of INT4 to -8 to 7 and INT8 to -128 to 127. Change clamp attributes to be in range of signed input type. Change-Id: Iccee1bf29b12da6f7622922f89d59cc0730460c2 Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com>
2021-07-27Fix bug causing test generator to create unused input tensorMatthew Haddon
* The SELECT operator requires a boolean condition tensor, this is now enforced earlier in the code to avoid an unused input tensor being created. Signed-off-by: Matthew Haddon <matthew.haddon@arm.com> Change-Id: Ief78cff8bd42bd24e9b977d41d05c1504d0422b4
2021-07-20Add INT8 table operator support to test generator.Jeremy Johnson
Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I5f01fa589692f7c6d556a4c22a44caec7c906b9d
2021-07-15Update serialization_lib hash.Kevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I122ef93965d04b715ed6eccddd8f4854d71b30f1
2021-07-13Make operator tests follow consistent naming schemeMatthew Haddon
* By making the naming scheme consistent for MUL tests (shape_type_perm_shift) we are more easily able to parse parameters. This is the same system used for operators like RESHAPE, where perm0 is the only permutation allowed, but it still included in the test name. * For multiple operators axis and axis value were split by an underscore, Now the form is axisX in line with other parameters. Signed-off-by: Matthew Haddon <matthew.haddon@arm.com> Change-Id: I92e5af6fd1e2b83bdb23ac4a4ab350010aeeeccb
2021-07-13Allow selection of higher rank tests using --target-rankJeremy Johnson
* The default rank range has been increased from 1-4 to 1-6. * Higher ranks often make tests too large so a default_test_rank_range has been included which makes the test generator produce only tests with ranks 1-4. * The user can now specify target-rank up to rank 6 which is allowed for all operators with the default rank range. * The maximum rank allowed (6) stored in TOSA_TENSOR_MAX_RANK variable. * User specified target shapes up to maximum rank are accepted without need for setting target-rank filter. Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: Ie4ca408d329cb1000ce9d3592b2c7d62bf311b3b
2021-07-09Fix bug causing reshape rank not to match test description.Matthew Haddon
* Tests produced now correctly display the rank being reshaped to in the file name. Signed-off-by: Matthew Haddon <matthew.haddon@arm.com> Change-Id: Ic31fce68b6b8bf7aa52686d54752d90d4b7e2242
2021-07-07Fix bug causing identical reshape permutationsMatthew Haddon
* When generating permutations of a reshape operator test there was no check to ensure that the permutation was unique, this patch adds a check to ensure that no two newShape variables are the same. * Added a 'escape_counter' which will break out of while loop if it continues on for too long. Signed-off-by: Matthew Haddon <matthew.haddon@arm.com> Change-Id: I231eb9b546a73431835b5dc899784f69cc22a773
2021-07-01Adding option -Coutput_dir= to control output location.Kevin Cheng
- If not specified, will be initialized with dirname(test_desc) - Like -Cflatbuffer_dir, reference model isn't responsible for creating directory. User need to make sure target directory path exists. Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I9cfcc801cff648e53306f8de8ea8d5eaaf87ea80
2021-06-28Fix transpose test gen of permutations & rankJeremy Johnson
Change transpose permutation generation to limit to the number of possible permutations that can be created by the shape size or the argument setting which ever is smaller. Also make sure all permutations up to this number are generated rather than randomly skipped due to duplicates. Allow rank 1 transpose tests as the specification allows rank 1. Change-Id: I28ea64c1d819f3af72c97bed43cfe7279c7e2f9c Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com>
2021-06-24Update to use new serialization_lib API.Kevin Cheng
- Constant tensors are now initialized from embedded u8 array instead from numpy. - Python unit test generator and built-in test hasn't been updated. Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I5cb86f8e5ec8f23fee5dcbf257874a0f204ede04
2021-06-09adding batch dimension to MatMul.Kevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I83f75dd5beb60fe7ca2d573ea0f81bac4cd62a07
2021-06-04Rewrite model frontend to be json-driven.Kevin Cheng
Change-Id: Iac786eff96183938d2fd11cde9313c6e8e1270a5
2021-05-24Support 8-bit TABLE op.Kevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: If577035d71c5f9970df5b6a78640a3028c3f83c0
2021-05-13Fix typo in DIV unit test generatorKevin Cheng
Change-Id: Id253b62af906a7ffbdbc0d338b6ec92d3795d1c6
2021-05-12Update to v0.22.0Kevin Cheng
- remove identityN and placeholder - add div - update serialization_lib hash - update apply_scale_16() assertion - regenerate examples/ due to serialization_lib change Change-Id: I7183d92bec33697c65adfc07cb8eb89c6882675a
2021-05-06Regenerate examples/ testsKevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I0c6286bdbd78c8e479eb64deead8822189968bef
2021-04-30Fix OpMul for 32-bit x 32-bit inputsKevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I068d3ce0bffe1b49845f0c8cd39130060cceaf19
2021-04-30Support 16-bit RescaleKevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: Ifc80b83c1abcd08e1b7f8e50f647b74c861bc933
2021-04-30Concat takes variadic inputsKevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: Ic8fe6e1fd899b41d444fd4f477d0f515ce0e9cc9
2021-04-30Re-order TOSA unit tests to match the spec orderingJared Smolens
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Signed-off-by: Jared Smolens <jared.smolens@arm.com> Change-Id: I0ef59cadd2f5097a08abb00d3fc256c556107ee0
2021-04-28Support mixed-precision input tensors for TOSA unit test.Kevin Cheng
Bring CONV2D/DEPTHWISE_CONV2D/TRANSPOSE_CONV2D/FULLY_CONNECTED up running. Other minor fixes: - reference model should bail out if shape is invalid, along with "goto done" cleanup. - cleanup typos/duplicate in tosa_test_gen.py/tosa_serializer.py. - wrong input_zp/output_zp being generated for RESCALE. Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: Ic1f3fe0090482bdee8a61508be7c738714191e19
2021-04-27Replace serialization/ and verif/ with MLPlatform's serialization_lib submoduleKevin Cheng
- Remove Usage and Format - Run black on verif/*.py scripts Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: Ie81515891eb0039540f614894f4b6b0e0e78ba74
2021-04-23Fix bug that NegateOp doesn't clip output valueKevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I6b335605d79338fc77e3f84585aeffe1e61cb1f2
2021-03-04Update DTypes for TOSA ops, test rig fixesJared Smolens
- Updated DTypes and expected failures for TOSA ops, particularly missing int8/int16 tests for Conv, FullyConnected, MatMul - Fixed a bug where unexpected failures were incorrectly categorized as passes Change-Id: I2763626317cedad9f3723f748986bb59a32f2e42 Signed-off-by: Jared Smolens <jared.smolens@arm.com>
2021-02-22Fix operator initialization bug when rank/dtype fails to initialize with ↵Kevin Cheng
Usage arrays Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: Iefa2959996871d06b766dadbc4cba601e2e739fe
2021-02-01Remove AINT8Kevin Cheng
- Updated C and Py serialization libraries, updated licence files - Removed AINT8 from TOSA reference tests Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Signed-off-by: Jared Smolens <jared.smolens@arm.com> Change-Id: I860bfeaad5a075e50f569c8f6861927ebacf1378
2021-01-27TOSA Unit Test updatesJared Smolens
- For TOSA.resize, constrain random OFM dimensions to be >0 to avoid possible div-by-zero - Print generated test names only in verbose mode Change-Id: Ib28457c03eca54b7721a1b1b5ba3ed89c58fd000 Signed-off-by: Jared Smolens <jared.smolens@arm.com>
2021-01-04Numpy utility supports scalar (rank 0) .npyKevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I4f53a83a0de333bd851fae4e894eb87b94902637
2020-11-24Update reference model/serialization library to 0.21.0 with unit tests ↵Kevin Cheng
added/updated - update tosa.GATHER - update tosa.RESIZE - add tosa.SCATTER Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I1c3247b831a64e35a85c4044b24c6c29b8e18d25
2020-11-12Implement and add unit tests for MUL and ARITHMETIC_RIGHT_SHIFTKevin Cheng
add .clang-format Add expected failure for RESIZE and RESCALE unit tests Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I33c8afdc8998e8518f2b0e5fabddd36ce3aa2ee9
2020-10-19Update apply_scale_32()Kevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: Ida8e3a17d74e5d6379b2244896ddf9e295d0ecc9
2020-10-14Initial checkin of TOSA reference_model and testsEric Kunze
Change-Id: I2f8e7fa63e2ae40203e57d2cc8814bde3b312cb6 Signed-off-by: Eric Kunze <eric.kunze@arm.com>
2020-10-13Initial empty repositoryEric Kunze