diff options
author | Jeremy Johnson <jeremy.johnson@arm.com> | 2024-04-08 16:17:47 +0100 |
---|---|---|
committer | Jeremy Johnson <jeremy.johnson@arm.com> | 2024-04-09 14:16:56 +0100 |
commit | c870d1ef9d1299a71a35ef0d7d68e5c09bc77efb (patch) | |
tree | e703d3c898f171663a1e299281ce8eaa1c4a716a | |
parent | 0dac6c90a1ed753d1018077be83941834f937601 (diff) | |
download | reference_model-c870d1ef9d1299a71a35ef0d7d68e5c09bc77efb.tar.gz |
Generate tests with random combination of const/inputs
Override the default input/consts used for each op with biased
random combos.
Signed-off-by: Jeremy Johnson <jeremy.johnson@arm.com>
Change-Id: I7a5eb2b01a47248bc0db5a2f930ad2ac52cc0a67
-rw-r--r-- | verif/generator/tosa_arg_gen.py | 14 | ||||
-rw-r--r-- | verif/generator/tosa_verif_build_tests.py | 7 |
2 files changed, 19 insertions, 2 deletions
diff --git a/verif/generator/tosa_arg_gen.py b/verif/generator/tosa_arg_gen.py index f9499b5..9b20053 100644 --- a/verif/generator/tosa_arg_gen.py +++ b/verif/generator/tosa_arg_gen.py @@ -796,7 +796,17 @@ class TosaTensorValuesGen: tens_meta["input_pos"] = idx tens_meta["op"] = gtu.getOpNameFromOpListName(opName).upper() - if idx < pCount: + if testGen.args.random_const_inputs: + # Choose type of tensor biased by defaults + percentage = rng.randInt(0, 100) + variable = (idx < pCount and percentage < 70) or ( + idx >= pCount and percentage >= 70 + ) + else: + # Use default set up of constants versus inputs for the op + variable = idx < pCount + + if variable: tens_meta["input_type"] = "VARIABLE" else: tens_meta["input_type"] = "CONSTANT" @@ -876,7 +886,7 @@ class TosaTensorValuesGen: if testGen.args.lazy_data_gen: data = None - if tens_meta["input_type"] == "VARIABLE": + if variable: tens = testGen.ser.addPlaceholder(shape, dtypeList[idx], data) else: tens = testGen.ser.addConst(shape, dtypeList[idx], data) diff --git a/verif/generator/tosa_verif_build_tests.py b/verif/generator/tosa_verif_build_tests.py index 472ba4d..a46b061 100644 --- a/verif/generator/tosa_verif_build_tests.py +++ b/verif/generator/tosa_verif_build_tests.py @@ -250,6 +250,13 @@ def parseArgs(argv): ) ops_group.add_argument( + "--random-const-inputs", + dest="random_const_inputs", + action="store_true", + help="Allow any combination of input/constant tensors for operators", + ) + + ops_group.add_argument( "--num-const-inputs-concat", dest="num_const_inputs_concat", default=0, |