diff options
author | Jeremy Johnson <jeremy.johnson@arm.com> | 2024-01-10 13:13:35 +0000 |
---|---|---|
committer | Jeremy Johnson <jeremy.johnson@arm.com> | 2024-01-17 14:23:50 +0000 |
commit | 3eafe6640614462cd450f4b67fbaa747f482a7fb (patch) | |
tree | 61fddb6ad731a14f6b46b8e7220fae76a8624c28 /verif | |
parent | 7b9abced233128f4128d84294a0f9d6b432a24cf (diff) | |
download | reference_model-3eafe6640614462cd450f4b67fbaa747f482a7fb.tar.gz |
Main Compliance testing for CONCAT
Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com>
Change-Id: If08c560eac171124641dac66d7de9d5053db72df
Diffstat (limited to 'verif')
-rw-r--r-- | verif/conformance/tosa_main_profile_ops_info.json | 7 | ||||
-rw-r--r-- | verif/generator/tosa_arg_gen.py | 22 | ||||
-rw-r--r-- | verif/generator/tosa_test_gen.py | 10 |
3 files changed, 27 insertions, 12 deletions
diff --git a/verif/conformance/tosa_main_profile_ops_info.json b/verif/conformance/tosa_main_profile_ops_info.json index fa9b26b..79e1c92 100644 --- a/verif/conformance/tosa_main_profile_ops_info.json +++ b/verif/conformance/tosa_main_profile_ops_info.json @@ -472,6 +472,7 @@ "profile": [ "tosa-mi" ], + "support_for": [ "lazy_data_gen" ], "generation": { "standard": { "generator_args": [ @@ -483,7 +484,7 @@ "--target-dtype", "bf16", "--fp-values-range", - "-2.0,2.0", + "-max,max", "--tensor-dim-range", "16,64", "--target-rank", @@ -503,7 +504,7 @@ "--target-dtype", "bf16", "--fp-values-range", - "-2.0,2.0", + "-max,max", "--tensor-dim-range", "1,16", "--target-rank", @@ -517,7 +518,7 @@ "--target-dtype", "fp32", "--fp-values-range", - "-2.0,2.0", + "-max,max", "--target-shape", "1,1,65534,1,1", "--target-shape", diff --git a/verif/generator/tosa_arg_gen.py b/verif/generator/tosa_arg_gen.py index bfe7f0d..e6d7df8 100644 --- a/verif/generator/tosa_arg_gen.py +++ b/verif/generator/tosa_arg_gen.py @@ -697,6 +697,14 @@ class TosaTensorValuesGen: ): # Variable inputs versus constants pCount, cCount = testGen.TOSA_OP_LIST[opName]["operands"] + if "p_count" in argsDict: + # Override for operators like CONCAT + pCount = argsDict["p_count"] + cCount = argsDict["c_count"] + assert pCount + cCount == len( + shapeList + ), "Placeholders & Constant tensors must match shapes list" + tens_ser_list = [] if ( @@ -1154,15 +1162,13 @@ class TosaTensorValuesGen: testGen, shapeList, argsDict["axis"], error_name ) - tens_ser_list = [] - tens_ser_list.extend( - testGen.buildPlaceholderTensors(shapeList[0:count], dtypeList[0:count]) - ) - tens_ser_list.extend( - testGen.buildConstTensors(shapeList[count:], dtypeList[count:]) - ) + # Override default pCount/cCount for operator + argsDict["p_count"] = count + argsDict["c_count"] = len(shapeList) - count - return TosaTensorValuesGen.TVGInfo(tens_ser_list, None) + return TosaTensorValuesGen.tvgLazyGenDefault( + testGen, opName, dtypeList, shapeList, argsDict, error_name + ) @staticmethod def tvgLogicalShift( diff --git a/verif/generator/tosa_test_gen.py b/verif/generator/tosa_test_gen.py index 7a759e9..d4dbef4 100644 --- a/verif/generator/tosa_test_gen.py +++ b/verif/generator/tosa_test_gen.py @@ -1442,7 +1442,12 @@ class TosaTestGen: attr.AxisAttribute(axis) self.ser.addOperator(op["op"], input_list, output_list, attr) - return TosaTestGen.BuildInfo(result_tensor, None) + + compliance = self.tensorComplianceMetaData( + op, inputs[0].dtype, args_dict, result_tensor, error_name + ) + + return TosaTestGen.BuildInfo(result_tensor, compliance) def build_pad( self, @@ -4145,6 +4150,9 @@ class TosaTestGen: TosaErrorValidator.evWrongOutputType, TosaErrorValidator.evWrongOutputList, ), + "data_gen": { + "fp": (gtu.DataGenType.PSEUDO_RANDOM,), + }, }, "pad": { "op": Op.PAD, |