aboutsummaryrefslogtreecommitdiff
path: root/reference_model
AgeCommit message (Collapse)Author
2022-10-18Update to check tensor size is validEric Kunze
Validate tensor arguments Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: Iac398f2c3e600944c6f65c3d8433bd17095f820b
2022-10-13Rename FLOAT type to FP32Jeremy Johnson
Update tensor operations naming to state input type as TxT in all cases. Effects CONV2D, CONV3D, DEPTHWISE_CONV2D, FULLY_CONNECTED, TRANSPOSE_CONV2D. Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: Ic959acfcb3aa0a910b33b774a5a85fac08219205
2022-10-13Minor fixes & add FP16 support to refmodel testing and conformance genJeremy Johnson
Improve base inference conformance generation: * Change to target specific dtypes required for conformance tests. * Reduce dimension sizes of ERROR_IF tests. NOTE: Will impact tensor, clamp and all ERROR_IF tests. Add option to change seed on conformance generation for extra testing. Stop creation of convolution tests with negative output dimensions. Improve reporting on failing to allocate tensor due to above issue. Fix runner to correctly pass ref model debug flags. Update reference_model examples. Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I992180dcfe265a7d50edfb151c9f38eeaef5c369
2022-10-12Remove conflicting REQUIRE definition in unit testsJames Ward
* undef reference_model def to allow doctest def Signed-off-by: James Ward <james.ward@arm.com> Change-Id: I143a7d57344dd3c19248c30ced1aca1d770d47a3
2022-10-11Reference model changes for fp16 supportJames Ward
Change-Id: I72f21fcfa153046274969d327313e3349981dbe6 Signed-off-by: James Ward <james.ward@arm.com>
2022-10-07Add IModelRunner interface to TOSA Reference ModelMatthew Sloyan
* Added IModelRunner interface using pimpl idiom, which allows a user to initialize, configure and run the model. * Added unit tests for IModelRunner. * Added doctest as third-party submodule. * Added user options to specify paths for dependencies. * Moved general func_config functions to separate utility, which removes cxxopts dependency. Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: If42f1f82cd6dadf18911a48dcd5fa579b719aff2
2022-09-14Fix debug masks in refmodel.Jeremy Johnson
Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I3fbf3f531cd803b35892e8f07fc4a495f8c95f98
2022-09-12Update reference model version to 0.41 draftEric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I862b4d0fa66328535d555d3d4624a5f3dd856cc0
2022-08-30Update revision to 0.40.v0.40.0v0.40Eric Kunze
In preparation for next release. Also include new version of the serialization library Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I577406339d527dd29f14196d6ff1bcd0ac3ffd78 Change-Id: Ia140cd16b21133c674f8ef1cf31e665982478c81
2022-08-29Update framework test generator to support TF/TFL conv3d.TatWai Chong
Add a new attribute `rank` to indicate the testing dimension range of input tensor. Also fix a minor bug in the existing conv3d simulation. And relax rescale operator in the reference model to support 5-D input. Change-Id: Ib42fe513831dc83eb7f9af07e011787a6c752704 Signed-off-by: TatWai Chong <tatwai.chong@arm.com>
2022-08-26Align padding for transpose_conv2d to match specEric Kunze
Increasing out pad values now leads to increasing pad. Reference model changes, and test generator changes to match specification definition Change-Id: I4f3ebfbca5048354fb15bedc7ab640ff28ed853a Signed-off-by: Eric Kunze <eric.kunze@arm.com> Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com>
2022-08-24Enabled 16-bit TABLE REQUIRE statementJerry Ge
Signed-off-by: Jerry Ge <jerry.ge@arm.com> Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: Ib6e81814e022f33e45430e47ca99d6d9f9e0e101
2022-08-22Simplify the argument parsing and debug codeEric Kunze
Change-Id: Ia681aa0eb1d42fa31a4658badb376f7b32b2e338 Signed-off-by: Eric Kunze <eric.kunze@arm.com>
2022-08-15Check that the shape calculation for PAD is correctEric Kunze
Matches a corresponding change to the specification Change-Id: If70356e0c78c1c88530e5d2f58bc50de864f249a Signed-off-by: Eric Kunze <eric.kunze@arm.com>
2022-08-10Update TOSA resize to match specificationTatWai Chong
Attribute stride and shift are removed, and has new scale and border. Also add tests in the generator to test tf.resize with all option combinations. Signed-off-by: TatWai Chong <tatwai.chong@arm.com> Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: If0f330d04395762d2d907863235eda1532f5e1ff
2022-07-11Modify input limits for apply_scale_32Eric Kunze
Aligns with change in specification, as the limit to value being between (-1 << shift-2) and (1 << shift-2) was overly constraining. Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I72cc5743344d4036920c3df366e0a3930701a0cb
2022-07-08Update reference model version to 0.31 draftEric Kunze
Include new submodule for serialization library. Change-Id: I38cdea3ed8ea3968d1dc06c689dab248d21b14fd Signed-off-by: Eric Kunze <eric.kunze@arm.com>
2022-06-17Fix reference model use of weight zero pointv0.30.0v0.30Eric Kunze
In the case of an int16xint8 test, the zero point was not being subtracted from the weights. Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: Ic77119b200b952715870abc11d09d1a646da86b1
2022-06-16Remove draft status from reference modelEric Kunze
Preparation for v0.30 release Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I65f6ee429a840d562c104c48335f8dcb51f79667
2022-06-15Remove quantization info from serialization attributesEric Kunze
Any needed information moves into the attributes for each operator. New serialization library version removes teh quantization information attributes from the schema Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: Icf6165687ab1fd34a01f64c01b0b92b2820e72fa
2022-06-13Update transpose_conv2d to align with TOSA specTatWai Chong
Rename outpad to out_pad, and also fix the dilation in the generator. Change-Id: I4c1599871f0d0b41856e819d8c644a85ca6d8267 Signed-off-by: TatWai Chong <tatwai.chong@arm.com>
2022-06-07Remove dilation from transpose_conv2d opEric Kunze
It is not in the spec and is being removed from serialization Change-Id: I82a102de37d8eb75210088dfda2df9b2fadb9c74 Signed-off-by: Eric Kunze <eric.kunze@arm.com>
2022-06-07Change size check in TILE to ERROR_IFEric Kunze
Now corresponds with the ERROR_IF in the specification Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I1f4e303c330d18661ca2e6ef65d0119baabedec6
2022-06-07Align the serialization schema with TOSA 0.24.0 specificationTatWai Chong
The operators are pool, conv, reshape, slice, transpose, and table. Signed-off-by: TatWai Chong <tatwai.chong@arm.com> Change-Id: I13f8d626df59be14361068222746347ba69d2fb5
2022-05-31Remove RESHAPE -1 dimensions supportJeremy Johnson
Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I098daf49c92da12c07143cdd23ac9bb58acebbb9
2022-05-26Add support for uint16_t to RESCALEJeremy Johnson
Update ref-model RESCALE op to support UINT16 conversions Add testing for RESCALE UINT16 and ERROR_IFs Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: Ic6e6e53de1f0b054bedb9e6ba3856e7475498aba
2022-05-16Initialize accumulator with bias value for CONV3DEric Kunze
Bias was mistakenly unused previously. Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: If776e923f7b3cd442c7f147fcbd22a214c37fd36
2022-05-16Adjust divisor calculationEric Kunze
Fixes issue where pad_left < stride would cause padding values to be missed Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I2ba0d0969ce1f00e2cb3ca1ab293c5e15a0c7749
2022-05-04Fix for NEGATE using 32-bit accumulatorJeremy Johnson
Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: Ie5d119dc317303a0d2a71d018ac94ce6800ecbf5
2022-04-28Update tensor ops ERROR_IF criteriaJeremy Johnson
Update to ref model to check ERROR_IF criteria for pooling and convolution ops to match specification Update to tosa_verif_build_tests to produce valid test ranges and new ERROR_IF tests Plus update pooling ops big kernel to 9 (from 6) for better testing coverage and set dilation to 1 and add out_pad bottom & right for transpose_conv2d to match specification Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: Ic5759872d40ae8d3f3d07043d9a0f2fa0244d72e
2022-04-05Add missing REQUIREs check to REDUCE_SUM in refmodelJeremy Johnson
And limit REDUCE_SUM test values to within int32 Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I4d902b245d17eb343cfb2bbc23d9db28c1d1f4c3
2022-03-24Add missing REQUIRE to NEGATE opJeremy Johnson
And update test generation to create values in predictable range Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I4ba1ff445bf6caeec9f8782902fc45929fe0ee77
2022-03-19Usability cleanupJared Smolens
- Error check on missing test description file instead of throwing json exception - Removed outdated help option Signed-off-by: Jared Smolens <jared.smolens@arm.com> Change-Id: Ia8780a88f4306af19ce63eaa679c84669f5c2ad9
2022-03-10Fix refmodel LOGICAL_XOR (was incorrectly LOGICAL_OR)Jeremy Johnson
Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: Ifa34021413cd6543c987a7b7c9c664144a4dd95d
2022-02-16Update refmodel apply_scale_32: adjust range checkingJeremy Johnson
Fix up generated values for rescale tests Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I28fc3b8f189d25a7ad8e5172d4d8a43b86820fcf
2022-02-01Rework divisor calculation for AVGPOOL2DEric Kunze
Previous code assumed symmetric padding when calculating the divisor for the average pool, and had issues with extra padding. The padding now follows the definition from the specification. Extra padding to the right/bottom is ignored when calculating the average pool divisor. Change-Id: Ib05e2346c6e9d55b6fef5294322e58ee18ef4928
2022-01-20Fix for LOGICAL_LEFT/RIGHT_SHIFT shift valuesJeremy Johnson
Added missing reference model REQUIRE check for shift value (0-31) Make sure result of LOGICAL_SHIFT_LEFT is masked to input size Fixed test generation to produce shift values in that range Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: Id511de0d989ea954fc1afd18dc2051341bce2cd0
2021-11-11Fix broadcast bugKevin Cheng
- test like [1] + [2] = [1] should be treated as invalid test - modify matchRankShape() function so it allows size 1 only on the source tensor but not target tensor Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I6bbb6a63dc1143712e7eef736a991cac419b009e
2021-11-11More ERROR_IF to check attribute for convolution opsKevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I49d498dd3d4c069d8d1db07310f939268b9df4b7
2021-11-09Check valid broadcastable shape for binary and ternary opsKevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I9ed3d8971a133b4cbb2cf7d827f4e69d55dee246
2021-11-05Cleanup CMakeLists.txtKevin Cheng
- update thirdparty/serialization_lib - avoid building uncessary targets in submodule Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I34698014b63e4d2d8b78011c001c85882014007c
2021-11-04Update reference model version to 0.24.0 draftEric Kunze
Change-Id: I1de45a21779ec014a0fda2c971dbc8f91df45bdb Signed-off-by: Eric Kunze <eric.kunze@arm.com>
2021-11-03Remove draft tag for 0.23 releasev0.23.0v0.23Eric Kunze
Update to the corresponding serialization library Change-Id: I323bf306d409b51bbf53447927953edd0fd79983 Signed-off-by: Eric Kunze <eric.kunze@arm.com>
2021-11-02more ERROR_IF fixesKevin Cheng
- TRANSPOSE: move perm attribute check to compile-time checker - TABLE: add output type checker Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I834a5f290fbc384ef339b624060e6e5c77072c36
2021-11-01Fix for tensor_ops.ccKevin Cheng
- MATMUL: only check a_zp/b_zp valid when this->qinfo exists - Fix typo in debug message Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I2cedcb25e4f57fcaec2caa1b850ea1232a023340
2021-10-28Changes for 0.23.0 releaseKevin Cheng
- update serialization_lib hash - PAD: 1. make padding as an attribute instead of tensor. 2. add pad_const_int (for non-float type) / pad_const_fp (for float type) - TRANSPOSE: make perm as an attribute instead of tensor - TABLE: make table as attribute instead of tensor - update examples/ tests Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: Iddc446db4b356ba2f36ea4a79b7220b9cfc2aa4e
2021-10-26Add version to reference modelKevin Cheng
- update serialization_lib hash - check model version against serializer version - add "-v" to command line option to print out model version Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I554cf0fdead22e7e5f91d2e98831459286c40a2d
2021-10-21Fix typo in Concat ERROR_IFKevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I37fa4fedbeb64c1e147f2b43f45cf8e25854256c
2021-10-21Fix pool2d generation and check to match specificationJeremy Johnson
Change output size error_if check in ref model to match specification. Remove size check from test generation as output shape is always correctly calculated. Change-Id: I5be64f31e6448b47e80fc0a4af11bb312f366a26 Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com>
2021-10-18Add ERROR_IF to control flow ops.Kevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: Ifd771171904d1e5a9db3ea1cae3ac9017e971c8c