This project is mirrored from https://review.mlplatform.org/tosa/reference_model.
Pull mirroring updated .
- Sep 20, 2024
-
-
Jerry-Ge authored
- TOSA spec requires bias_dtype should be the same as output_dtype for Convolution operators - Add a check to validate that they're indeed the same Signed-off-by:
Jerry Ge <jerry.ge@arm.com> Change-Id: I6668bc99ad987827137c7ba217d6260779723801
-
- Sep 19, 2024
-
-
Won Jong Jeon authored
- Add fp8e4m3xfp8e5m2 and fp8e5m2xfp8e4m3 MATMUL with f16/f32 accumulator - Add second input data type for calculating bound parameter for mixed data types - Update json config file to use new "generator_profile_filter" Signed-off-by:
Won Jeon <won.jeon@arm.com> Change-Id: Id16f8ecbc0bb437e42c263c75fe95628c3df3a80
-
- CLI - ./verify --test_desc JSON_CONFIG_PATH --imp_result_file IMP_PATH --ref_result_file REF_PATH [--bnd_result_file BND_PATH] [--ofm_name OFM_NAME] - Changes to compliance metadata in json_config to include shape information - verify_relative and verify_reduce_product changed due to #include error - unit_tests added to reference_model/test/verify_exe_testing.cpp Signed-off-by:
Emmanuel Adesola <emmanuel.adesola@arm.com> Change-Id: I13ed2e173b82cf148a556c99d49fd106a8e64882
-
- Sep 17, 2024
-
-
Jeremy Johnson authored
To reduce accuracy loss for low precision floating-point types, update the AVG_POOL2D to scale by the kernel size at the accumulation precision. Change-Id: I3d2d0ad0bbceb1183064530ac800ff34ca04c1f2 Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com>
-
- Sep 16, 2024
-
-
DTypes covered: bf16, fp16 and fp32. fp8e4m3 and fp8e5m2 already had full rank coverage. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: I5590897381c2d1c0394f16a62ede4afd225ac45e
-
Ian Tayler Lessa authored
Add CTS tests to cover ranks 0, 4, 5, and 6 for fp8e4m3 and fp8e5m2 which were previously lacking. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: I594b651cf7fedd70d91d3e79f83cf84ec1b552ef
-
- Sep 13, 2024
-
-
Required to resolve `uint32_t` on aarch64 platforms Signed-off-by:
Udaya Ranga <udaya.ranga@arm.com> Change-Id: Ia58820606adc7c0a105d057e727ca4a7b3771c34
-
- Sep 12, 2024
-
-
* add cmd boolean option: --terminate_early * add JSON test descriptor field: terminate_early Signed-off-by:
Peng Sun <peng.sun@arm.com> Change-Id: If3f09cdbf66eb450aaf494ed0d6b0dab2a2d9723
-
Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I3d5f3d34a4517597989e15b929fd2676eae36157
-
Jeremy Johnson authored
COND_IF updated: * binary and const tests now support FP32, FP16, BF16, INT32 INT16 and INT8. const tests also support BOOL. * use data generation library where types are supported * reduce tensor size as conditional block ops have own tests Fixed COND_IF const tests to not have extraneous CONSTs. Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I06dc29cb3c1e7813c08fc526f8e764a5767af0b1
-
- Sep 10, 2024
-
-
Generate more values near the mid-point of the range (usually 0.0) when generating pseudo-random values. If using a simple uniform distribution most of the times we generate very large or very small numbers, and almost never numbers in the -1000 to +1000 range. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: I09fdb72f6f339d5a03f3bba1c54924fb4073916a
-
Only create one FP_SPECIAL test for each (in_type, out_type) pair. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: I3beea05663e4d6178fdc774c9b44b27bae156656
-
Change-Id: I32c90649eb0fdc50f8601d5671fc3379b21b2cfc
-
- Sep 09, 2024
-
-
Neither Eigen nor c++ stdlib have well defined min/max handling to match Tosa spec and frameworks such as TF. for instance: reduce_min([4, float('nan')]) -> float('nan') reduce_min([float('nan'), float('nan')]) -> float('nan') reduce_min([float('-inf'), float('inf')]) -> float('-inf') This patch creates custom floating point reducer for min/max, and create framework tests to verify special floating point min/max reduction. Co-authored-by:
Eirini Vlassi Pandi <eirini.vlassipandi@arm.com> Change-Id: If59d3ebd937ce46615a8da35a535338a94be1d3f Signed-off-by:
TatWai Chong <tatwai.chong@arm.com>
-
WHILE_LOOP updated: * now supports INT8, INT16, FP32, FP16, BF16 and INT32 * use data generation library where types are supported * reduce tensor size as loop body ops have own tests Add broadcast mode to FIXED_DATA generation mode to allow setting tensor to single value Change-Id: I243474e125fafc0f97a01dac2a2ccb445224e268 Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com>
-
A clang warning about a loss of precision in a cast can be safely ignored for our purposes when generating FP_SPECIAL values as all we are looking for is a value that is higher than the maximum INT32::MAX value, and we will get it with or without the loss of precision in the implicit cast to float. Added TODO for future improvements to cfloat.h allowing casting from other types including int32_t. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: Iebfb47fdc3e2d26e5e27fe7b966431804dfc925e
-
- Sep 05, 2024
-
-
Signed-off-by:
Jerry Ge <jerry.ge@arm.com> Change-Id: Id20d434c16fff7df3b89a830382ca5c41af26e81
-
Operators covered: SELECT, GATHER, SCATTER. Added to fp32, bf16, or fp8e4m3 and fp8e5m2 depending on the operator. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: I4bdf8d86e2c641a0d721b282f034c066293a54a1
-
Improves the rank coverage of those operators for fp8 types. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: I0e7bc74f5c98435a7d867e6e59baf11a513f6cb3
-
Applies to fp8e4m3 and fp8e5m2. Other data types already had full rank coverage. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: I551d9aa63c7e228ef0372d2026af4698b303f94f
-
- Sep 04, 2024
-
-
Compliance check for SIN has a different bound and that for COS has a max-comparison with a specific value * Add fields to `desc.json` * Use them in ABS_MODE for calculating error-bounds Change-Id: I43d76d4cae832c1587e6bd98c9f84da766af1050
-
Improves rank coverage for bf16, fp8e4m3 and fp8e5m2. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: Ia946f3e4515f851f2e1cd65b62752ecd0fa85792
-
We were generating 2 FP_SPECIAL tests for MATMUL, but only 1 is needed. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: Ie7b1897ae7877d14de83549b46a55281def51906
-
This change only reduces the dimension size to prevent tests from becoming too large Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: I69d3b9867bcbf7de363aa898c3e8829366c45e4e
-
Included ops: ADD, SUB, MUL, POW, MINIMUM, MAXIMUM - Full rank coverage - Also add rank 6 for tosa-pro-fp in some ops Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: I22c4ca9e96b440e3d5b89a4c76a5f110aca99e47
-
- Sep 02, 2024
-
-
Ian Tayler Lessa authored
Fixes the calculation of the ULP value for very small values near normal_min Adds a test specialized to the small-input case to catch similar errors in the future. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: I47f1bee68f6fabb69b434572603dbfe6442be554
-
- Aug 29, 2024
-
-
Jeremy Johnson authored
Instead of filtering on operator entry in the TOSA_OP_LIST table Also standardise method for operator name generation Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I9541f70312d11c1ec97b7fb6946d036fc750f7dd
-
- Aug 28, 2024
-
-
This seg fault error can be reproduced by creating a custom SUT testing with scalars (rank-0 tensor) e.g. np.half(1), or np.array(1). Iterating over the shape, which is empty for a scalar, is invalid. Change-Id: I6b0677baf8ff40cb13c146c91775bc28fd22cc9b Signed-off-by:
TatWai Chong <tatwai.chong@arm.com>
-
Jeremy Johnson authored
By increasing size of tensors for LOG, EXP, RECIPROCAL, SIN & COS this will create a large enough tensor to test all BF16 values. Change-Id: Ibb17d93b1a935fa8768f4e0f9c0baa52682327e4 Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com>
-
- Aug 27, 2024
-
-
Jeremy Johnson authored
This reverts commit f863245d. Reason: This is part of the revert of FetchContent Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I5aa15ab795906d743e16e5dd1a0006c816c02ee6
-
Remove old test selector, new generator selector is used instead Remove unsupported framework generation code Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I064acac91c1d06215675b670bb514f4a5e9ba81c
-
Update remaining integer ops, mostly Tensor and Control ops. Switch to use new generator test selection Add missing ranks to Control ops. Rename CAST generator groups to make it more obvious how the "generator_profile_filter" support works. Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I3fafed79065a8fac72e25db89f2d35500bdf2669
-
- Aug 26, 2024
-
- Aug 21, 2024
-
-
Applies to ARGMAX, MATMUL, CONV2D, CONV3D, DEPTHWISE_CONV2D, TRANSPOSE_CONV2D, FFT2D and RFFT2D. Improves the coverage with respect to rank, fp_special tests and covered types for these operators. Adds support for stable_random_gen and random_const_inputs Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: Id2204991ae23fc32b79a69b8eac63c54a63c2af1
-
- Aug 20, 2024
-
-
Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I3ebbcc3cd4c9cd9d4382a687078e32456f7820cc
-
Add the output (bias) type to the shape list of convolution operators so that the output (bias) type can be retrieved during test gen. Remove the accumulator type info from the table since it is inferable. Signed-off-by:
TatWai Chong <tatwai.chong@arm.com> Change-Id: I1f30897e2a53d444b1370301b7aca5ea12af1e3b
-
- Aug 19, 2024
-
-
Jeremy Johnson authored
Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I8b8c55e14f6ca5e418fb5368bcb55190bee51e1e
-
- Change will affect both INT and FP profile testing - Add Rank 0 testing - Update the ops_info json to use generator_select for CAST - Update how we filter and generate one test per (in_type, out_type) pair by passing profile and extension selection to tosa_verif_build_tests - Add support for lazy_data_gen, stable_random_gen and random_const_inputs - Fix bug where we were using the wrong dtype for generating arguments for CAST - Add FP_SPECIAL tests for CAST (FP profile only) - Add SpecialTestSet to FpSpecialInfo to avoid using NaNs in INT tests Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: If4d9e20fc3c2d850042ac6b227185157fde56fe4
-
Enable stable random, random const and generator test selector. Also fix up so that FP special tests are always chosen by the test selector. Signed-off-by:
Eirini Vlassi Pandi <eirini.vlassipandi@arm.com> Signed-off-by:
Jeremy Johnson <jeremy.johnson@arm.com> Change-Id: I5d44f0f2291f3e5863613e69f328fedfbc0b4ac8
-
Corrects the coversion factor when the accumulator type is different from the output type for dot product operations. Signed-off-by:
Ian Tayler Lessa <ian.taylerlessa@arm.com> Change-Id: I4db9a767718c2a38c4c404c9cde7faa7d768f41d
-