1#
2# Copyright (C) 2018 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17input0 = Input("input0", "TENSOR_FLOAT32", "{2, 3}")
18multipliers = Input("multipliers", "TENSOR_INT32", "{2}")
19output0 = Output("output0", "TENSOR_FLOAT32", "{4, 3}")
20
21model = Model().Operation("TILE", input0, multipliers).To(output0)
22
23input_values = [11, 12, 13,
24                21, 22, 23]
25multiplier_values = [2, 1]
26output_values = [11, 12, 13,
27                 21, 22, 23,
28                 11, 12, 13,
29                 21, 22, 23]
30
31quant8 = DataTypeConverter().Identify({
32    input0: ["TENSOR_QUANT8_ASYMM", 0.5, 127],
33    output0: ["TENSOR_QUANT8_ASYMM", 0.5, 127],
34})
35
36int32 = DataTypeConverter().Identify({
37    input0: ["TENSOR_INT32"],
38    output0: ["TENSOR_INT32"],
39})
40
41float16 = DataTypeConverter().Identify({
42    input0: ["TENSOR_FLOAT16"],
43    output0: ["TENSOR_FLOAT16"],
44})
45
46Example({
47    input0: input_values,
48    multipliers: multiplier_values,
49    output0: output_values,
50}).AddVariations("relaxed", float16, quant8, int32)
51