diff --git a/res/TensorFlowLiteRecipes/GreaterEqual_001/test.recipe b/res/TensorFlowLiteRecipes/GreaterEqual_001/test.recipe new file mode 100644 index 00000000000..bae45f8b71c --- /dev/null +++ b/res/TensorFlowLiteRecipes/GreaterEqual_001/test.recipe @@ -0,0 +1,26 @@ +operand { + name: "ifm1" + type: FLOAT32 + shape { dim: 1 dim: 4 dim: 4 dim: 3 } +} +operand { + name: "ifm2" + type: FLOAT32 + shape { dim: 1 dim: 4 dim: 4 dim: 3 } +} +operand { + name: "ofm" + type: BOOL + shape { dim: 1 dim: 4 dim: 4 dim: 3 } +} +operation { + type: "GreaterEqual" + greaterequal_options { + } + input: "ifm1" + input: "ifm2" + output: "ofm" +} +input: "ifm1" +input: "ifm2" +output: "ofm" diff --git a/res/TensorFlowLiteRecipes/GreaterEqual_001/test.reverse b/res/TensorFlowLiteRecipes/GreaterEqual_001/test.reverse new file mode 100644 index 00000000000..e69de29bb2d diff --git a/res/TensorFlowLiteRecipes/GreaterEqual_001/test.rule b/res/TensorFlowLiteRecipes/GreaterEqual_001/test.rule new file mode 100644 index 00000000000..6e11af8f7cc --- /dev/null +++ b/res/TensorFlowLiteRecipes/GreaterEqual_001/test.rule @@ -0,0 +1,7 @@ +# To check if the model is resized properly + +RULE "VERIFY_FILE_FORMAT" $(verify_file_format) '=' 1 + +RULE "IFM1_SHAPE" $(tensor_shape ifm1) '=' [1,2,3] +RULE "IFM2_SHAPE" $(tensor_shape ifm2) '=' [1,2,3] +RULE "GREATER_EQUAL_SHAPE" $(tensor_shape ofm) '=' [1,2,3] diff --git a/res/TensorFlowLiteRecipes/Inf_StridedSlice_002/test.recipe b/res/TensorFlowLiteRecipes/Inf_StridedSlice_002/test.recipe new file mode 100644 index 00000000000..9db0593c066 --- /dev/null +++ b/res/TensorFlowLiteRecipes/Inf_StridedSlice_002/test.recipe @@ -0,0 +1,47 @@ +operand { + name: "ifm" + type: FLOAT32 + shape { dim: 1 dim: 0 dim: 0 dim: 5 } + shape_signature { dim: 1 dim: -1 dim: -1 dim: 5 } +} +operand { + name: "begin" + type: INT32 + shape { dim: 4 } + filler { tag: "explicit" arg: "0" arg: "0" arg: "0" arg: "0" } +} +operand { + name: "end" + type: INT32 + shape { dim: 4 } + filler { tag: "explicit" arg: "1" arg: "8" arg: "3" arg: "5" } +} +operand { + name: "strides" + type: INT32 + shape { dim: 4 } + filler { tag: "explicit" arg: "1" arg: "1" arg: "1" arg: "1" } +} +operand { + name: "ofm" + type: FLOAT32 + shape { dim: 1 dim: 0 dim: 0 dim: 5 } + shape_signature { dim: 1 dim: -1 dim: -1 dim: 5 } +} +operation { + type: "StridedSlice" + input: "ifm" + input: "begin" + input: "end" + input: "strides" + output: "ofm" + strided_slice_options { + begin_mask: 0 + end_mask: 0 + ellipsis_mask: 0 + new_axis_mask: 0 + shrink_axis_mask: 0 + } +} +input: "ifm" +output: "ofm" diff --git a/res/TensorFlowLiteRecipes/Inf_StridedSlice_002/test.rule b/res/TensorFlowLiteRecipes/Inf_StridedSlice_002/test.rule new file mode 100644 index 00000000000..eca45dc33f0 --- /dev/null +++ b/res/TensorFlowLiteRecipes/Inf_StridedSlice_002/test.rule @@ -0,0 +1,6 @@ +# To check if the model is resized properly + +RULE "VERIFY_FILE_FORMAT" $(verify_file_format) '=' 1 + +RULE "IFM_SHAPE" $(tensor_shape ifm) '=' [1,10,10,5] +RULE "STRIDED_SLICE_SHAPE" $(tensor_shape ofm) '=' [1,8,3,5] diff --git a/res/TensorFlowLiteRecipes/Net_FullyConnected_Gelu_001/test.recipe b/res/TensorFlowLiteRecipes/Net_FullyConnected_Gelu_001/test.recipe new file mode 100644 index 00000000000..0e47be64b46 --- /dev/null +++ b/res/TensorFlowLiteRecipes/Net_FullyConnected_Gelu_001/test.recipe @@ -0,0 +1,90 @@ +operand { + name: "in" + type: FLOAT32 + shape { dim: 1 dim: 16 } +} +operand { + name: "weight" + type: FLOAT32 + shape { dim: 16 dim: 16 } + filler { + tag: "gaussian" + arg: "0.0" + arg: "1.0" + } +} +operand { + name: "bias" + type: FLOAT32 + shape { dim: 16 } + filler { + tag: "gaussian" + arg: "0.0" + arg: "1.0" + } +} +operand { + name: "out" + type: FLOAT32 + shape { dim: 1 dim: 16 } +} +operation { + type: "FullyConnected" + fullyconnected_options { + activation: RELU + } + input: "in" + input: "weight" + input: "bias" + output: "out" +} +operand { + name: "gelu_out" + type: FLOAT32 + shape { dim: 1 dim: 16 } +} +operation { + type: "Gelu" + gelu_options { + approximate: false + } + input: "out" + output: "gelu_out" +} +operand { + name: "weight_2" + type: FLOAT32 + shape { dim: 4 dim: 16 } + filler { + tag: "gaussian" + arg: "0.0" + arg: "1.0" + } +} +operand { + name: "bias_2" + type: FLOAT32 + shape { dim: 4 } + filler { + tag: "gaussian" + arg: "0.0" + arg: "1.0" + } +} +operand { + name: "out_2" + type: FLOAT32 + shape { dim: 1 dim: 4 } +} +operation { + type: "FullyConnected" + fullyconnected_options { + activation: RELU + } + input: "gelu_out" + input: "weight_2" + input: "bias_2" + output: "out_2" +} +input: "in" +output: "out_2" diff --git a/res/TensorFlowLiteRecipes/Net_FullyConnected_Gelu_001/test.reverse b/res/TensorFlowLiteRecipes/Net_FullyConnected_Gelu_001/test.reverse new file mode 100644 index 00000000000..e69de29bb2d diff --git a/res/TensorFlowLiteRecipes/Net_FullyConnected_Gelu_001/test.rule b/res/TensorFlowLiteRecipes/Net_FullyConnected_Gelu_001/test.rule new file mode 100644 index 00000000000..05ecff0e7c1 --- /dev/null +++ b/res/TensorFlowLiteRecipes/Net_FullyConnected_Gelu_001/test.rule @@ -0,0 +1,6 @@ +# To check if the model is resized properly + +RULE "VERIFY_FILE_FORMAT" $(verify_file_format) '=' 1 + +RULE "IN_SHAPE" $(tensor_shape in) '=' [2,16] +RULE "OUT_2_SHAPE" $(tensor_shape out_2) '=' [2,4] diff --git a/res/TensorFlowLiteRecipes/PRelu_002/test.recipe b/res/TensorFlowLiteRecipes/PRelu_002/test.recipe new file mode 100644 index 00000000000..35f88c16c6c --- /dev/null +++ b/res/TensorFlowLiteRecipes/PRelu_002/test.recipe @@ -0,0 +1,24 @@ +operand { + name: "ifm1" + type: FLOAT32 + shape { dim: 1 dim: 4 dim: 4 dim: 3 } +} +operand { + name: "ifm2" + type: FLOAT32 + shape { dim: 1 dim: 1 dim: 3 } +} +operand { + name: "ofm" + type: FLOAT32 + shape { dim: 1 dim: 4 dim: 4 dim: 3 } +} +operation { + type: "PRelu" + input: "ifm1" + input: "ifm2" + output: "ofm" +} +input: "ifm1" +input: "ifm2" +output: "ofm" diff --git a/res/TensorFlowLiteRecipes/PRelu_002/test.reverse b/res/TensorFlowLiteRecipes/PRelu_002/test.reverse new file mode 100644 index 00000000000..e69de29bb2d diff --git a/res/TensorFlowLiteRecipes/PRelu_002/test.rule b/res/TensorFlowLiteRecipes/PRelu_002/test.rule new file mode 100644 index 00000000000..39eacbd0a36 --- /dev/null +++ b/res/TensorFlowLiteRecipes/PRelu_002/test.rule @@ -0,0 +1,7 @@ +# To check if the model is resized properly + +RULE "VERIFY_FILE_FORMAT" $(verify_file_format) '=' 1 + +RULE "IFM1_SHAPE" $(tensor_shape ifm1) '=' [1,4,4,5] +RULE "IFM2_SHAPE" $(tensor_shape ifm2) '=' [1,1,5] +RULE "PRELU_SHAPE" $(tensor_shape ofm) '=' [1,4,4,5] diff --git a/res/TensorFlowLiteRecipes/ReduceAny_dynamic_004/test.recipe b/res/TensorFlowLiteRecipes/ReduceAny_dynamic_004/test.recipe new file mode 100644 index 00000000000..427bd05f17b --- /dev/null +++ b/res/TensorFlowLiteRecipes/ReduceAny_dynamic_004/test.recipe @@ -0,0 +1,31 @@ +operand { + name: "ifm" + type: BOOL + shape { dim: 1 dim: 3 dim: 4 } + shape_signature { dim: -1 dim: 3 dim: 4 } +} +operand { + name: "reduction_indices" + type: INT32 + shape { dim: 3 } + filler { + tag: "explicit" + arg: "0" arg: "1" arg: "2" + } +} +operand { + name: "ofm" + type: BOOL + shape { } +} +operation { + type: "ReduceAny" + reduce_any_options { + keep_dims: false + } + input: "ifm" + input: "reduction_indices" + output: "ofm" +} +input: "ifm" +output: "ofm" diff --git a/res/TensorFlowLiteRecipes/ReduceAny_dynamic_004/test.reverse b/res/TensorFlowLiteRecipes/ReduceAny_dynamic_004/test.reverse new file mode 100644 index 00000000000..e69de29bb2d diff --git a/res/TensorFlowLiteRecipes/ReduceAny_dynamic_004/test.rule b/res/TensorFlowLiteRecipes/ReduceAny_dynamic_004/test.rule new file mode 100644 index 00000000000..052a5727e75 --- /dev/null +++ b/res/TensorFlowLiteRecipes/ReduceAny_dynamic_004/test.rule @@ -0,0 +1,6 @@ +# To check if the model is resized properly + +RULE "VERIFY_FILE_FORMAT" $(verify_file_format) '=' 1 + +RULE "IFM_SHAPE" $(tensor_shape ifm) '=' [4,5,6] +RULE "REDUCE_ANY_SHAPE" $(tensor_shape ofm) '=' [] diff --git a/res/TensorFlowLiteRecipes/Split_001/test.recipe b/res/TensorFlowLiteRecipes/Split_001/test.recipe new file mode 100644 index 00000000000..e4bbe7620e1 --- /dev/null +++ b/res/TensorFlowLiteRecipes/Split_001/test.recipe @@ -0,0 +1,34 @@ +operand { + name: "ifm" + type: FLOAT32 + shape { dim: 6 dim: 1 dim: 2 } +} +operand { + name: "split_dim" + type: INT32 + shape { } + filler { tag: "explicit" arg: "0" } +} +operand { + name: "ofm1" + type: FLOAT32 + shape { dim: 3 dim: 1 dim: 2 } +} +operand { + name: "ofm2" + type: FLOAT32 + shape { dim: 3 dim: 1 dim: 2 } +} +operation { + type: "Split" + split_options { + num_splits: 2 + } + input: "split_dim" + input: "ifm" + output: "ofm1" + output: "ofm2" +} +input: "ifm" +output: "ofm1" +output: "ofm2" diff --git a/res/TensorFlowLiteRecipes/Split_001/test.reverse b/res/TensorFlowLiteRecipes/Split_001/test.reverse new file mode 100644 index 00000000000..e69de29bb2d diff --git a/res/TensorFlowLiteRecipes/Split_001/test.rule b/res/TensorFlowLiteRecipes/Split_001/test.rule new file mode 100644 index 00000000000..2f62e5e387c --- /dev/null +++ b/res/TensorFlowLiteRecipes/Split_001/test.rule @@ -0,0 +1,7 @@ +# To check if the model is resized properly + +RULE "VERIFY_FILE_FORMAT" $(verify_file_format) '=' 1 + +RULE "IFM_SHAPE" $(tensor_shape ifm) '=' [8,1,2] +RULE "OFM1_SHAPE" $(tensor_shape ofm1) '=' [4,1,2] +RULE "OFM2_SHAPE" $(tensor_shape ofm2) '=' [4,1,2]