xref: /aosp_15_r20/external/ComputeLibrary/examples/graph_edsr.h (revision c217d954acce2dbc11938adb493fc0abd69584f3)
1*c217d954SCole Faust /*
2*c217d954SCole Faust  * Copyright (c) 2020 Arm Limited.
3*c217d954SCole Faust  *
4*c217d954SCole Faust  * SPDX-License-Identifier: MIT
5*c217d954SCole Faust  *
6*c217d954SCole Faust  * Permission is hereby granted, free of charge, to any person obtaining a copy
7*c217d954SCole Faust  * of this software and associated documentation files (the "Software"), to
8*c217d954SCole Faust  * deal in the Software without restriction, including without limitation the
9*c217d954SCole Faust  * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
10*c217d954SCole Faust  * sell copies of the Software, and to permit persons to whom the Software is
11*c217d954SCole Faust  * furnished to do so, subject to the following conditions:
12*c217d954SCole Faust  *
13*c217d954SCole Faust  * The above copyright notice and this permission notice shall be included in all
14*c217d954SCole Faust  * copies or substantial portions of the Software.
15*c217d954SCole Faust  *
16*c217d954SCole Faust  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17*c217d954SCole Faust  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18*c217d954SCole Faust  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19*c217d954SCole Faust  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20*c217d954SCole Faust  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21*c217d954SCole Faust  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22*c217d954SCole Faust  * SOFTWARE.
23*c217d954SCole Faust  */
24*c217d954SCole Faust 
25*c217d954SCole Faust #ifndef ARM_COMPUTE_GRAPH_EDSR_H
26*c217d954SCole Faust #define ARM_COMPUTE_GRAPH_EDSR_H
27*c217d954SCole Faust 
28*c217d954SCole Faust #include "arm_compute/graph.h"
29*c217d954SCole Faust 
30*c217d954SCole Faust #include "utils/GraphUtils.h"
31*c217d954SCole Faust 
32*c217d954SCole Faust class GraphEdsr
33*c217d954SCole Faust {
34*c217d954SCole Faust public:
GraphEdsr()35*c217d954SCole Faust     GraphEdsr()
36*c217d954SCole Faust         : _graph(0, "EDSR")
37*c217d954SCole Faust     {
38*c217d954SCole Faust     }
39*c217d954SCole Faust 
setup(const arm_compute::utils::CommonGraphParams & common_params,const arm_compute::utils::SimpleOption<std::string> & expected_output_filename)40*c217d954SCole Faust     bool setup(const arm_compute::utils::CommonGraphParams &common_params, const arm_compute::utils::SimpleOption<std::string> &expected_output_filename)
41*c217d954SCole Faust     {
42*c217d954SCole Faust         using namespace arm_compute;
43*c217d954SCole Faust         using namespace arm_compute::graph;
44*c217d954SCole Faust         using namespace arm_compute::utils;
45*c217d954SCole Faust         using namespace arm_compute::graph_utils;
46*c217d954SCole Faust 
47*c217d954SCole Faust         const auto &data_path = common_params.data_path;
48*c217d954SCole Faust         const auto &target    = common_params.target;
49*c217d954SCole Faust 
50*c217d954SCole Faust         NodeID id_upscale_net_FakeQuantWithMinMaxVars_transposed = _graph.add_node<ConstNode>(
51*c217d954SCole Faust                                                                        TensorDescriptor
52*c217d954SCole Faust         {
53*c217d954SCole Faust             TensorShape{ 12, 2, 2, 3 },
54*c217d954SCole Faust             DataType::QASYMM8,
55*c217d954SCole Faust             QuantizationInfo(0.00393533194437623, 1),
56*c217d954SCole Faust             DataLayout::NHWC });
57*c217d954SCole Faust         INode *node_upscale_net_FakeQuantWithMinMaxVars_transposed = _graph.node(id_upscale_net_FakeQuantWithMinMaxVars_transposed);
58*c217d954SCole Faust         node_upscale_net_FakeQuantWithMinMaxVars_transposed->set_common_node_parameters(NodeParams{ "upscale_net_FakeQuantWithMinMaxVars_transposed", target });
59*c217d954SCole Faust         node_upscale_net_FakeQuantWithMinMaxVars_transposed->output(0)->set_accessor(get_weights_accessor(data_path,
60*c217d954SCole Faust                                                                                                           "/cnn_data/edsr_model/upscale_net_FakeQuantWithMinMaxVars_transposed.npy", DataLayout::NHWC));
61*c217d954SCole Faust 
62*c217d954SCole Faust         NodeID id_pre_upscale_Conv2D_bias = _graph.add_node<ConstNode>(
63*c217d954SCole Faust                                                 TensorDescriptor
64*c217d954SCole Faust         {
65*c217d954SCole Faust             TensorShape{ 12 },
66*c217d954SCole Faust             DataType::S32,
67*c217d954SCole Faust             QuantizationInfo(2.9644968435604824e-06),
68*c217d954SCole Faust             DataLayout::NHWC });
69*c217d954SCole Faust         INode *node_pre_upscale_Conv2D_bias = _graph.node(id_pre_upscale_Conv2D_bias);
70*c217d954SCole Faust         node_pre_upscale_Conv2D_bias->set_common_node_parameters(NodeParams{ "pre_upscale_Conv2D_bias", target });
71*c217d954SCole Faust         node_pre_upscale_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/pre_upscale_Conv2D_bias.npy", DataLayout::NHWC));
72*c217d954SCole Faust 
73*c217d954SCole Faust         NodeID id_pre_upscale_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
74*c217d954SCole Faust                                                             TensorDescriptor
75*c217d954SCole Faust         {
76*c217d954SCole Faust             TensorShape{ 256, 3, 3, 12 },
77*c217d954SCole Faust             DataType::QASYMM8,
78*c217d954SCole Faust             QuantizationInfo(0.000455576169770211, 128),
79*c217d954SCole Faust             DataLayout::NHWC });
80*c217d954SCole Faust         INode *node_pre_upscale_FakeQuantWithMinMaxVars = _graph.node(id_pre_upscale_FakeQuantWithMinMaxVars);
81*c217d954SCole Faust         node_pre_upscale_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "pre_upscale_FakeQuantWithMinMaxVars", target });
82*c217d954SCole Faust         node_pre_upscale_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/pre_upscale_FakeQuantWithMinMaxVars.npy",
83*c217d954SCole Faust                                                                                                DataLayout::NHWC));
84*c217d954SCole Faust 
85*c217d954SCole Faust         NodeID id_post_residual_Conv2D_bias = _graph.add_node<ConstNode>(
86*c217d954SCole Faust                                                   TensorDescriptor
87*c217d954SCole Faust         {
88*c217d954SCole Faust             TensorShape{ 256 },
89*c217d954SCole Faust             DataType::S32,
90*c217d954SCole Faust             QuantizationInfo(1.2760000345224398e-06),
91*c217d954SCole Faust             DataLayout::NHWC });
92*c217d954SCole Faust         INode *node_post_residual_Conv2D_bias = _graph.node(id_post_residual_Conv2D_bias);
93*c217d954SCole Faust         node_post_residual_Conv2D_bias->set_common_node_parameters(NodeParams{ "post_residual_Conv2D_bias", target });
94*c217d954SCole Faust         node_post_residual_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/post_residual_Conv2D_bias.npy", DataLayout::NHWC));
95*c217d954SCole Faust 
96*c217d954SCole Faust         NodeID id_post_residual_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
97*c217d954SCole Faust                                                               TensorDescriptor
98*c217d954SCole Faust         {
99*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
100*c217d954SCole Faust             DataType::QASYMM8,
101*c217d954SCole Faust             QuantizationInfo(0.00036424631252884865, 129),
102*c217d954SCole Faust             DataLayout::NHWC });
103*c217d954SCole Faust         INode *node_post_residual_FakeQuantWithMinMaxVars = _graph.node(id_post_residual_FakeQuantWithMinMaxVars);
104*c217d954SCole Faust         node_post_residual_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "post_residual_FakeQuantWithMinMaxVars", target });
105*c217d954SCole Faust         node_post_residual_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/post_residual_FakeQuantWithMinMaxVars.npy",
106*c217d954SCole Faust                                                                                                  DataLayout::NHWC));
107*c217d954SCole Faust 
108*c217d954SCole Faust         NodeID id_mul_15_y = _graph.add_node<ConstNode>(
109*c217d954SCole Faust                                  TensorDescriptor
110*c217d954SCole Faust         {
111*c217d954SCole Faust             TensorShape{ 1 },
112*c217d954SCole Faust             DataType::QASYMM8,
113*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
114*c217d954SCole Faust             DataLayout::NHWC });
115*c217d954SCole Faust         INode *node_mul_15_y = _graph.node(id_mul_15_y);
116*c217d954SCole Faust         node_mul_15_y->set_common_node_parameters(NodeParams{ "mul_15_y", target });
117*c217d954SCole Faust         node_mul_15_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_15_y.npy", DataLayout::NHWC));
118*c217d954SCole Faust 
119*c217d954SCole Faust         NodeID id_block_15_1_Conv2D_bias = _graph.add_node<ConstNode>(
120*c217d954SCole Faust                                                TensorDescriptor
121*c217d954SCole Faust         {
122*c217d954SCole Faust             TensorShape{ 256 },
123*c217d954SCole Faust             DataType::S32,
124*c217d954SCole Faust             QuantizationInfo(1.2441644230420934e-06),
125*c217d954SCole Faust             DataLayout::NHWC });
126*c217d954SCole Faust         INode *node_block_15_1_Conv2D_bias = _graph.node(id_block_15_1_Conv2D_bias);
127*c217d954SCole Faust         node_block_15_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_15_1_Conv2D_bias", target });
128*c217d954SCole Faust         node_block_15_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_15_1_Conv2D_bias.npy", DataLayout::NHWC));
129*c217d954SCole Faust 
130*c217d954SCole Faust         NodeID id_block_15_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
131*c217d954SCole Faust                                                            TensorDescriptor
132*c217d954SCole Faust         {
133*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
134*c217d954SCole Faust             DataType::QASYMM8,
135*c217d954SCole Faust             QuantizationInfo(0.00037038681330159307, 125),
136*c217d954SCole Faust             DataLayout::NHWC });
137*c217d954SCole Faust         INode *node_block_15_1_FakeQuantWithMinMaxVars = _graph.node(id_block_15_1_FakeQuantWithMinMaxVars);
138*c217d954SCole Faust         node_block_15_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_15_1_FakeQuantWithMinMaxVars", target });
139*c217d954SCole Faust         node_block_15_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_15_1_FakeQuantWithMinMaxVars.npy",
140*c217d954SCole Faust                                                                                               DataLayout::NHWC));
141*c217d954SCole Faust 
142*c217d954SCole Faust         NodeID id_mul_14_y = _graph.add_node<ConstNode>(
143*c217d954SCole Faust                                  TensorDescriptor
144*c217d954SCole Faust         {
145*c217d954SCole Faust             TensorShape{ 1 },
146*c217d954SCole Faust             DataType::QASYMM8,
147*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
148*c217d954SCole Faust             DataLayout::NHWC });
149*c217d954SCole Faust         INode *node_mul_14_y = _graph.node(id_mul_14_y);
150*c217d954SCole Faust         node_mul_14_y->set_common_node_parameters(NodeParams{ "mul_14_y", target });
151*c217d954SCole Faust         node_mul_14_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_14_y.npy", DataLayout::NHWC));
152*c217d954SCole Faust 
153*c217d954SCole Faust         NodeID id_block_14_1_Conv2D_bias = _graph.add_node<ConstNode>(
154*c217d954SCole Faust                                                TensorDescriptor
155*c217d954SCole Faust         {
156*c217d954SCole Faust             TensorShape{ 256 },
157*c217d954SCole Faust             DataType::S32,
158*c217d954SCole Faust             QuantizationInfo(1.3417260333881131e-06),
159*c217d954SCole Faust             DataLayout::NHWC });
160*c217d954SCole Faust         INode *node_block_14_1_Conv2D_bias = _graph.node(id_block_14_1_Conv2D_bias);
161*c217d954SCole Faust         node_block_14_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_14_1_Conv2D_bias", target });
162*c217d954SCole Faust         node_block_14_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_14_1_Conv2D_bias.npy", DataLayout::NHWC));
163*c217d954SCole Faust 
164*c217d954SCole Faust         NodeID id_block_14_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
165*c217d954SCole Faust                                                            TensorDescriptor
166*c217d954SCole Faust         {
167*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
168*c217d954SCole Faust             DataType::QASYMM8,
169*c217d954SCole Faust             QuantizationInfo(0.00040307495510205626, 127),
170*c217d954SCole Faust             DataLayout::NHWC });
171*c217d954SCole Faust         INode *node_block_14_1_FakeQuantWithMinMaxVars = _graph.node(id_block_14_1_FakeQuantWithMinMaxVars);
172*c217d954SCole Faust         node_block_14_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_14_1_FakeQuantWithMinMaxVars", target });
173*c217d954SCole Faust         node_block_14_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_14_1_FakeQuantWithMinMaxVars.npy",
174*c217d954SCole Faust                                                                                               DataLayout::NHWC));
175*c217d954SCole Faust 
176*c217d954SCole Faust         NodeID id_mul_13_y = _graph.add_node<ConstNode>(
177*c217d954SCole Faust                                  TensorDescriptor
178*c217d954SCole Faust         {
179*c217d954SCole Faust             TensorShape{ 1 },
180*c217d954SCole Faust             DataType::QASYMM8,
181*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
182*c217d954SCole Faust             DataLayout::NHWC });
183*c217d954SCole Faust         INode *node_mul_13_y = _graph.node(id_mul_13_y);
184*c217d954SCole Faust         node_mul_13_y->set_common_node_parameters(NodeParams{ "mul_13_y", target });
185*c217d954SCole Faust         node_mul_13_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_13_y.npy", DataLayout::NHWC));
186*c217d954SCole Faust 
187*c217d954SCole Faust         NodeID id_block_13_1_Conv2D_bias = _graph.add_node<ConstNode>(
188*c217d954SCole Faust                                                TensorDescriptor
189*c217d954SCole Faust         {
190*c217d954SCole Faust             TensorShape{ 256 },
191*c217d954SCole Faust             DataType::S32,
192*c217d954SCole Faust             QuantizationInfo(1.2636977544389083e-06),
193*c217d954SCole Faust             DataLayout::NHWC });
194*c217d954SCole Faust         INode *node_block_13_1_Conv2D_bias = _graph.node(id_block_13_1_Conv2D_bias);
195*c217d954SCole Faust         node_block_13_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_13_1_Conv2D_bias", target });
196*c217d954SCole Faust         node_block_13_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_13_1_Conv2D_bias.npy", DataLayout::NHWC));
197*c217d954SCole Faust 
198*c217d954SCole Faust         NodeID id_block_13_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
199*c217d954SCole Faust                                                            TensorDescriptor
200*c217d954SCole Faust         {
201*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
202*c217d954SCole Faust             DataType::QASYMM8,
203*c217d954SCole Faust             QuantizationInfo(0.0003858553245663643, 131),
204*c217d954SCole Faust             DataLayout::NHWC });
205*c217d954SCole Faust         INode *node_block_13_1_FakeQuantWithMinMaxVars = _graph.node(id_block_13_1_FakeQuantWithMinMaxVars);
206*c217d954SCole Faust         node_block_13_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_13_1_FakeQuantWithMinMaxVars", target });
207*c217d954SCole Faust         node_block_13_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_13_1_FakeQuantWithMinMaxVars.npy",
208*c217d954SCole Faust                                                                                               DataLayout::NHWC));
209*c217d954SCole Faust 
210*c217d954SCole Faust         NodeID id_mul_12_y = _graph.add_node<ConstNode>(
211*c217d954SCole Faust                                  TensorDescriptor
212*c217d954SCole Faust         {
213*c217d954SCole Faust             TensorShape{ 1 },
214*c217d954SCole Faust             DataType::QASYMM8,
215*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
216*c217d954SCole Faust             DataLayout::NHWC });
217*c217d954SCole Faust         INode *node_mul_12_y = _graph.node(id_mul_12_y);
218*c217d954SCole Faust         node_mul_12_y->set_common_node_parameters(NodeParams{ "mul_12_y", target });
219*c217d954SCole Faust         node_mul_12_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_12_y.npy", DataLayout::NHWC));
220*c217d954SCole Faust 
221*c217d954SCole Faust         NodeID id_block_12_1_Conv2D_bias = _graph.add_node<ConstNode>(
222*c217d954SCole Faust                                                TensorDescriptor
223*c217d954SCole Faust         {
224*c217d954SCole Faust             TensorShape{ 256 },
225*c217d954SCole Faust             DataType::S32,
226*c217d954SCole Faust             QuantizationInfo(1.3479783547154511e-06),
227*c217d954SCole Faust             DataLayout::NHWC });
228*c217d954SCole Faust         INode *node_block_12_1_Conv2D_bias = _graph.node(id_block_12_1_Conv2D_bias);
229*c217d954SCole Faust         node_block_12_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_12_1_Conv2D_bias", target });
230*c217d954SCole Faust         node_block_12_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_12_1_Conv2D_bias.npy", DataLayout::NHWC));
231*c217d954SCole Faust 
232*c217d954SCole Faust         NodeID id_block_12_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
233*c217d954SCole Faust                                                            TensorDescriptor
234*c217d954SCole Faust         {
235*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
236*c217d954SCole Faust             DataType::QASYMM8,
237*c217d954SCole Faust             QuantizationInfo(0.00041212860378436744, 130),
238*c217d954SCole Faust             DataLayout::NHWC });
239*c217d954SCole Faust         INode *node_block_12_1_FakeQuantWithMinMaxVars = _graph.node(id_block_12_1_FakeQuantWithMinMaxVars);
240*c217d954SCole Faust         node_block_12_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_12_1_FakeQuantWithMinMaxVars", target });
241*c217d954SCole Faust         node_block_12_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_12_1_FakeQuantWithMinMaxVars.npy",
242*c217d954SCole Faust                                                                                               DataLayout::NHWC));
243*c217d954SCole Faust 
244*c217d954SCole Faust         NodeID id_mul_11_y = _graph.add_node<ConstNode>(
245*c217d954SCole Faust                                  TensorDescriptor
246*c217d954SCole Faust         {
247*c217d954SCole Faust             TensorShape{ 1 },
248*c217d954SCole Faust             DataType::QASYMM8,
249*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
250*c217d954SCole Faust             DataLayout::NHWC });
251*c217d954SCole Faust         INode *node_mul_11_y = _graph.node(id_mul_11_y);
252*c217d954SCole Faust         node_mul_11_y->set_common_node_parameters(NodeParams{ "mul_11_y", target });
253*c217d954SCole Faust         node_mul_11_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_11_y.npy", DataLayout::NHWC));
254*c217d954SCole Faust 
255*c217d954SCole Faust         NodeID id_block_11_1_Conv2D_bias = _graph.add_node<ConstNode>(
256*c217d954SCole Faust                                                TensorDescriptor
257*c217d954SCole Faust         {
258*c217d954SCole Faust             TensorShape{ 256 },
259*c217d954SCole Faust             DataType::S32,
260*c217d954SCole Faust             QuantizationInfo(1.2847248171965475e-06),
261*c217d954SCole Faust             DataLayout::NHWC });
262*c217d954SCole Faust         INode *node_block_11_1_Conv2D_bias = _graph.node(id_block_11_1_Conv2D_bias);
263*c217d954SCole Faust         node_block_11_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_11_1_Conv2D_bias", target });
264*c217d954SCole Faust         node_block_11_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_11_1_Conv2D_bias.npy", DataLayout::NHWC));
265*c217d954SCole Faust 
266*c217d954SCole Faust         NodeID id_block_11_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
267*c217d954SCole Faust                                                            TensorDescriptor
268*c217d954SCole Faust         {
269*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
270*c217d954SCole Faust             DataType::QASYMM8,
271*c217d954SCole Faust             QuantizationInfo(0.00040296532097272575, 131),
272*c217d954SCole Faust             DataLayout::NHWC });
273*c217d954SCole Faust         INode *node_block_11_1_FakeQuantWithMinMaxVars = _graph.node(id_block_11_1_FakeQuantWithMinMaxVars);
274*c217d954SCole Faust         node_block_11_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_11_1_FakeQuantWithMinMaxVars", target });
275*c217d954SCole Faust         node_block_11_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_11_1_FakeQuantWithMinMaxVars.npy",
276*c217d954SCole Faust                                                                                               DataLayout::NHWC));
277*c217d954SCole Faust 
278*c217d954SCole Faust         NodeID id_mul_10_y = _graph.add_node<ConstNode>(
279*c217d954SCole Faust                                  TensorDescriptor
280*c217d954SCole Faust         {
281*c217d954SCole Faust             TensorShape{ 1 },
282*c217d954SCole Faust             DataType::QASYMM8,
283*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
284*c217d954SCole Faust             DataLayout::NHWC });
285*c217d954SCole Faust         INode *node_mul_10_y = _graph.node(id_mul_10_y);
286*c217d954SCole Faust         node_mul_10_y->set_common_node_parameters(NodeParams{ "mul_10_y", target });
287*c217d954SCole Faust         node_mul_10_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_10_y.npy", DataLayout::NHWC));
288*c217d954SCole Faust 
289*c217d954SCole Faust         NodeID id_block_10_1_Conv2D_bias = _graph.add_node<ConstNode>(
290*c217d954SCole Faust                                                TensorDescriptor
291*c217d954SCole Faust         {
292*c217d954SCole Faust             TensorShape{ 256 },
293*c217d954SCole Faust             DataType::S32,
294*c217d954SCole Faust             QuantizationInfo(1.1997129831797793e-06),
295*c217d954SCole Faust             DataLayout::NHWC });
296*c217d954SCole Faust         INode *node_block_10_1_Conv2D_bias = _graph.node(id_block_10_1_Conv2D_bias);
297*c217d954SCole Faust         node_block_10_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_10_1_Conv2D_bias", target });
298*c217d954SCole Faust         node_block_10_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_10_1_Conv2D_bias.npy", DataLayout::NHWC));
299*c217d954SCole Faust 
300*c217d954SCole Faust         NodeID id_block_10_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
301*c217d954SCole Faust                                                            TensorDescriptor
302*c217d954SCole Faust         {
303*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
304*c217d954SCole Faust             DataType::QASYMM8,
305*c217d954SCole Faust             QuantizationInfo(0.00036640543839894235, 129),
306*c217d954SCole Faust             DataLayout::NHWC });
307*c217d954SCole Faust         INode *node_block_10_1_FakeQuantWithMinMaxVars = _graph.node(id_block_10_1_FakeQuantWithMinMaxVars);
308*c217d954SCole Faust         node_block_10_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_10_1_FakeQuantWithMinMaxVars", target });
309*c217d954SCole Faust         node_block_10_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_10_1_FakeQuantWithMinMaxVars.npy",
310*c217d954SCole Faust                                                                                               DataLayout::NHWC));
311*c217d954SCole Faust 
312*c217d954SCole Faust         NodeID id_mul_9_y = _graph.add_node<ConstNode>(
313*c217d954SCole Faust                                 TensorDescriptor
314*c217d954SCole Faust         {
315*c217d954SCole Faust             TensorShape{ 1 },
316*c217d954SCole Faust             DataType::QASYMM8,
317*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
318*c217d954SCole Faust             DataLayout::NHWC });
319*c217d954SCole Faust         INode *node_mul_9_y = _graph.node(id_mul_9_y);
320*c217d954SCole Faust         node_mul_9_y->set_common_node_parameters(NodeParams{ "mul_9_y", target });
321*c217d954SCole Faust         node_mul_9_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_9_y.npy", DataLayout::NHWC));
322*c217d954SCole Faust 
323*c217d954SCole Faust         NodeID id_block_9_1_Conv2D_bias = _graph.add_node<ConstNode>(
324*c217d954SCole Faust                                               TensorDescriptor
325*c217d954SCole Faust         {
326*c217d954SCole Faust             TensorShape{ 256 },
327*c217d954SCole Faust             DataType::S32,
328*c217d954SCole Faust             QuantizationInfo(1.1920226370421005e-06),
329*c217d954SCole Faust             DataLayout::NHWC });
330*c217d954SCole Faust         INode *node_block_9_1_Conv2D_bias = _graph.node(id_block_9_1_Conv2D_bias);
331*c217d954SCole Faust         node_block_9_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_9_1_Conv2D_bias", target });
332*c217d954SCole Faust         node_block_9_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_9_1_Conv2D_bias.npy", DataLayout::NHWC));
333*c217d954SCole Faust 
334*c217d954SCole Faust         NodeID id_block_9_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
335*c217d954SCole Faust                                                           TensorDescriptor
336*c217d954SCole Faust         {
337*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
338*c217d954SCole Faust             DataType::QASYMM8,
339*c217d954SCole Faust             QuantizationInfo(0.0003706997958943248, 129),
340*c217d954SCole Faust             DataLayout::NHWC });
341*c217d954SCole Faust         INode *node_block_9_1_FakeQuantWithMinMaxVars = _graph.node(id_block_9_1_FakeQuantWithMinMaxVars);
342*c217d954SCole Faust         node_block_9_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_9_1_FakeQuantWithMinMaxVars", target });
343*c217d954SCole Faust         node_block_9_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_9_1_FakeQuantWithMinMaxVars.npy",
344*c217d954SCole Faust                                                                                              DataLayout::NHWC));
345*c217d954SCole Faust 
346*c217d954SCole Faust         NodeID id_mul_8_y = _graph.add_node<ConstNode>(
347*c217d954SCole Faust                                 TensorDescriptor
348*c217d954SCole Faust         {
349*c217d954SCole Faust             TensorShape{ 1 },
350*c217d954SCole Faust             DataType::QASYMM8,
351*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
352*c217d954SCole Faust             DataLayout::NHWC });
353*c217d954SCole Faust         INode *node_mul_8_y = _graph.node(id_mul_8_y);
354*c217d954SCole Faust         node_mul_8_y->set_common_node_parameters(NodeParams{ "mul_8_y", target });
355*c217d954SCole Faust         node_mul_8_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_8_y.npy", DataLayout::NHWC));
356*c217d954SCole Faust 
357*c217d954SCole Faust         NodeID id_block_8_1_Conv2D_bias = _graph.add_node<ConstNode>(
358*c217d954SCole Faust                                               TensorDescriptor
359*c217d954SCole Faust         {
360*c217d954SCole Faust             TensorShape{ 256 },
361*c217d954SCole Faust             DataType::S32,
362*c217d954SCole Faust             QuantizationInfo(1.218903321387188e-06),
363*c217d954SCole Faust             DataLayout::NHWC });
364*c217d954SCole Faust         INode *node_block_8_1_Conv2D_bias = _graph.node(id_block_8_1_Conv2D_bias);
365*c217d954SCole Faust         node_block_8_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_8_1_Conv2D_bias", target });
366*c217d954SCole Faust         node_block_8_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_8_1_Conv2D_bias.npy", DataLayout::NHWC));
367*c217d954SCole Faust 
368*c217d954SCole Faust         NodeID id_block_8_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
369*c217d954SCole Faust                                                           TensorDescriptor
370*c217d954SCole Faust         {
371*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
372*c217d954SCole Faust             DataType::QASYMM8,
373*c217d954SCole Faust             QuantizationInfo(0.00038377835880964994, 127),
374*c217d954SCole Faust             DataLayout::NHWC });
375*c217d954SCole Faust         INode *node_block_8_1_FakeQuantWithMinMaxVars = _graph.node(id_block_8_1_FakeQuantWithMinMaxVars);
376*c217d954SCole Faust         node_block_8_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_8_1_FakeQuantWithMinMaxVars", target });
377*c217d954SCole Faust         node_block_8_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_8_1_FakeQuantWithMinMaxVars.npy",
378*c217d954SCole Faust                                                                                              DataLayout::NHWC));
379*c217d954SCole Faust 
380*c217d954SCole Faust         NodeID id_mul_7_y = _graph.add_node<ConstNode>(
381*c217d954SCole Faust                                 TensorDescriptor
382*c217d954SCole Faust         {
383*c217d954SCole Faust             TensorShape{ 1 },
384*c217d954SCole Faust             DataType::QASYMM8,
385*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
386*c217d954SCole Faust             DataLayout::NHWC });
387*c217d954SCole Faust         INode *node_mul_7_y = _graph.node(id_mul_7_y);
388*c217d954SCole Faust         node_mul_7_y->set_common_node_parameters(NodeParams{ "mul_7_y", target });
389*c217d954SCole Faust         node_mul_7_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_7_y.npy", DataLayout::NHWC));
390*c217d954SCole Faust 
391*c217d954SCole Faust         NodeID id_block_7_1_Conv2D_bias = _graph.add_node<ConstNode>(
392*c217d954SCole Faust                                               TensorDescriptor
393*c217d954SCole Faust         {
394*c217d954SCole Faust             TensorShape{ 256 },
395*c217d954SCole Faust             DataType::S32,
396*c217d954SCole Faust             QuantizationInfo(1.257252392861119e-06),
397*c217d954SCole Faust             DataLayout::NHWC });
398*c217d954SCole Faust         INode *node_block_7_1_Conv2D_bias = _graph.node(id_block_7_1_Conv2D_bias);
399*c217d954SCole Faust         node_block_7_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_7_1_Conv2D_bias", target });
400*c217d954SCole Faust         node_block_7_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_7_1_Conv2D_bias.npy", DataLayout::NHWC));
401*c217d954SCole Faust 
402*c217d954SCole Faust         NodeID id_block_7_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
403*c217d954SCole Faust                                                           TensorDescriptor
404*c217d954SCole Faust         {
405*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
406*c217d954SCole Faust             DataType::QASYMM8,
407*c217d954SCole Faust             QuantizationInfo(0.00039844686398282647, 129),
408*c217d954SCole Faust             DataLayout::NHWC });
409*c217d954SCole Faust         INode *node_block_7_1_FakeQuantWithMinMaxVars = _graph.node(id_block_7_1_FakeQuantWithMinMaxVars);
410*c217d954SCole Faust         node_block_7_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_7_1_FakeQuantWithMinMaxVars", target });
411*c217d954SCole Faust         node_block_7_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_7_1_FakeQuantWithMinMaxVars.npy",
412*c217d954SCole Faust                                                                                              DataLayout::NHWC));
413*c217d954SCole Faust 
414*c217d954SCole Faust         NodeID id_mul_6_y = _graph.add_node<ConstNode>(
415*c217d954SCole Faust                                 TensorDescriptor
416*c217d954SCole Faust         {
417*c217d954SCole Faust             TensorShape{ 1 },
418*c217d954SCole Faust             DataType::QASYMM8,
419*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
420*c217d954SCole Faust             DataLayout::NHWC });
421*c217d954SCole Faust         INode *node_mul_6_y = _graph.node(id_mul_6_y);
422*c217d954SCole Faust         node_mul_6_y->set_common_node_parameters(NodeParams{ "mul_6_y", target });
423*c217d954SCole Faust         node_mul_6_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_6_y.npy", DataLayout::NHWC));
424*c217d954SCole Faust 
425*c217d954SCole Faust         NodeID id_block_6_1_Conv2D_bias = _graph.add_node<ConstNode>(
426*c217d954SCole Faust                                               TensorDescriptor
427*c217d954SCole Faust         {
428*c217d954SCole Faust             TensorShape{ 256 },
429*c217d954SCole Faust             DataType::S32,
430*c217d954SCole Faust             QuantizationInfo(1.244850636794581e-06),
431*c217d954SCole Faust             DataLayout::NHWC });
432*c217d954SCole Faust         INode *node_block_6_1_Conv2D_bias = _graph.node(id_block_6_1_Conv2D_bias);
433*c217d954SCole Faust         node_block_6_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_6_1_Conv2D_bias", target });
434*c217d954SCole Faust         node_block_6_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_6_1_Conv2D_bias.npy", DataLayout::NHWC));
435*c217d954SCole Faust 
436*c217d954SCole Faust         NodeID id_block_6_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
437*c217d954SCole Faust                                                           TensorDescriptor
438*c217d954SCole Faust         {
439*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
440*c217d954SCole Faust             DataType::QASYMM8,
441*c217d954SCole Faust             QuantizationInfo(0.00040187727427110076, 132),
442*c217d954SCole Faust             DataLayout::NHWC });
443*c217d954SCole Faust         INode *node_block_6_1_FakeQuantWithMinMaxVars = _graph.node(id_block_6_1_FakeQuantWithMinMaxVars);
444*c217d954SCole Faust         node_block_6_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_6_1_FakeQuantWithMinMaxVars", target });
445*c217d954SCole Faust         node_block_6_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_6_1_FakeQuantWithMinMaxVars.npy",
446*c217d954SCole Faust                                                                                              DataLayout::NHWC));
447*c217d954SCole Faust 
448*c217d954SCole Faust         NodeID id_mul_5_y = _graph.add_node<ConstNode>(
449*c217d954SCole Faust                                 TensorDescriptor
450*c217d954SCole Faust         {
451*c217d954SCole Faust             TensorShape{ 1 },
452*c217d954SCole Faust             DataType::QASYMM8,
453*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
454*c217d954SCole Faust             DataLayout::NHWC });
455*c217d954SCole Faust         INode *node_mul_5_y = _graph.node(id_mul_5_y);
456*c217d954SCole Faust         node_mul_5_y->set_common_node_parameters(NodeParams{ "mul_5_y", target });
457*c217d954SCole Faust         node_mul_5_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_5_y.npy", DataLayout::NHWC));
458*c217d954SCole Faust 
459*c217d954SCole Faust         NodeID id_block_5_1_Conv2D_bias = _graph.add_node<ConstNode>(
460*c217d954SCole Faust                                               TensorDescriptor
461*c217d954SCole Faust         {
462*c217d954SCole Faust             TensorShape{ 256 },
463*c217d954SCole Faust             DataType::S32,
464*c217d954SCole Faust             QuantizationInfo(1.241092718373693e-06),
465*c217d954SCole Faust             DataLayout::NHWC });
466*c217d954SCole Faust         INode *node_block_5_1_Conv2D_bias = _graph.node(id_block_5_1_Conv2D_bias);
467*c217d954SCole Faust         node_block_5_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_5_1_Conv2D_bias", target });
468*c217d954SCole Faust         node_block_5_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_5_1_Conv2D_bias.npy", DataLayout::NHWC));
469*c217d954SCole Faust 
470*c217d954SCole Faust         NodeID id_block_5_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
471*c217d954SCole Faust                                                           TensorDescriptor
472*c217d954SCole Faust         {
473*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
474*c217d954SCole Faust             DataType::QASYMM8,
475*c217d954SCole Faust             QuantizationInfo(0.0003938926674891263, 129),
476*c217d954SCole Faust             DataLayout::NHWC });
477*c217d954SCole Faust         INode *node_block_5_1_FakeQuantWithMinMaxVars = _graph.node(id_block_5_1_FakeQuantWithMinMaxVars);
478*c217d954SCole Faust         node_block_5_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_5_1_FakeQuantWithMinMaxVars", target });
479*c217d954SCole Faust         node_block_5_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_5_1_FakeQuantWithMinMaxVars.npy",
480*c217d954SCole Faust                                                                                              DataLayout::NHWC));
481*c217d954SCole Faust 
482*c217d954SCole Faust         NodeID id_mul_4_y = _graph.add_node<ConstNode>(
483*c217d954SCole Faust                                 TensorDescriptor
484*c217d954SCole Faust         {
485*c217d954SCole Faust             TensorShape{ 1 },
486*c217d954SCole Faust             DataType::QASYMM8,
487*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
488*c217d954SCole Faust             DataLayout::NHWC });
489*c217d954SCole Faust         INode *node_mul_4_y = _graph.node(id_mul_4_y);
490*c217d954SCole Faust         node_mul_4_y->set_common_node_parameters(NodeParams{ "mul_4_y", target });
491*c217d954SCole Faust         node_mul_4_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_4_y.npy", DataLayout::NHWC));
492*c217d954SCole Faust 
493*c217d954SCole Faust         NodeID id_block_4_1_Conv2D_bias = _graph.add_node<ConstNode>(
494*c217d954SCole Faust                                               TensorDescriptor
495*c217d954SCole Faust         {
496*c217d954SCole Faust             TensorShape{ 256 },
497*c217d954SCole Faust             DataType::S32,
498*c217d954SCole Faust             QuantizationInfo(1.1748390988941537e-06),
499*c217d954SCole Faust             DataLayout::NHWC });
500*c217d954SCole Faust         INode *node_block_4_1_Conv2D_bias = _graph.node(id_block_4_1_Conv2D_bias);
501*c217d954SCole Faust         node_block_4_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_4_1_Conv2D_bias", target });
502*c217d954SCole Faust         node_block_4_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_4_1_Conv2D_bias.npy", DataLayout::NHWC));
503*c217d954SCole Faust 
504*c217d954SCole Faust         NodeID id_block_4_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
505*c217d954SCole Faust                                                           TensorDescriptor
506*c217d954SCole Faust         {
507*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
508*c217d954SCole Faust             DataType::QASYMM8,
509*c217d954SCole Faust             QuantizationInfo(0.0003788181929849088, 129),
510*c217d954SCole Faust             DataLayout::NHWC });
511*c217d954SCole Faust         INode *node_block_4_1_FakeQuantWithMinMaxVars = _graph.node(id_block_4_1_FakeQuantWithMinMaxVars);
512*c217d954SCole Faust         node_block_4_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_4_1_FakeQuantWithMinMaxVars", target });
513*c217d954SCole Faust         node_block_4_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_4_1_FakeQuantWithMinMaxVars.npy",
514*c217d954SCole Faust                                                                                              DataLayout::NHWC));
515*c217d954SCole Faust 
516*c217d954SCole Faust         NodeID id_mul_3_y = _graph.add_node<ConstNode>(
517*c217d954SCole Faust                                 TensorDescriptor
518*c217d954SCole Faust         {
519*c217d954SCole Faust             TensorShape{ 1 },
520*c217d954SCole Faust             DataType::QASYMM8,
521*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
522*c217d954SCole Faust             DataLayout::NHWC });
523*c217d954SCole Faust         INode *node_mul_3_y = _graph.node(id_mul_3_y);
524*c217d954SCole Faust         node_mul_3_y->set_common_node_parameters(NodeParams{ "mul_3_y", target });
525*c217d954SCole Faust         node_mul_3_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_3_y.npy", DataLayout::NHWC));
526*c217d954SCole Faust 
527*c217d954SCole Faust         NodeID id_block_3_1_Conv2D_bias = _graph.add_node<ConstNode>(
528*c217d954SCole Faust                                               TensorDescriptor
529*c217d954SCole Faust         {
530*c217d954SCole Faust             TensorShape{ 256 },
531*c217d954SCole Faust             DataType::S32,
532*c217d954SCole Faust             QuantizationInfo(1.1937011095142225e-06),
533*c217d954SCole Faust             DataLayout::NHWC });
534*c217d954SCole Faust         INode *node_block_3_1_Conv2D_bias = _graph.node(id_block_3_1_Conv2D_bias);
535*c217d954SCole Faust         node_block_3_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_3_1_Conv2D_bias", target });
536*c217d954SCole Faust         node_block_3_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_3_1_Conv2D_bias.npy", DataLayout::NHWC));
537*c217d954SCole Faust 
538*c217d954SCole Faust         NodeID id_block_3_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
539*c217d954SCole Faust                                                           TensorDescriptor
540*c217d954SCole Faust         {
541*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
542*c217d954SCole Faust             DataType::QASYMM8,
543*c217d954SCole Faust             QuantizationInfo(0.0003944312920793891, 129),
544*c217d954SCole Faust             DataLayout::NHWC });
545*c217d954SCole Faust         INode *node_block_3_1_FakeQuantWithMinMaxVars = _graph.node(id_block_3_1_FakeQuantWithMinMaxVars);
546*c217d954SCole Faust         node_block_3_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_3_1_FakeQuantWithMinMaxVars", target });
547*c217d954SCole Faust         node_block_3_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_3_1_FakeQuantWithMinMaxVars.npy",
548*c217d954SCole Faust                                                                                              DataLayout::NHWC));
549*c217d954SCole Faust 
550*c217d954SCole Faust         NodeID id_mul_2_y = _graph.add_node<ConstNode>(
551*c217d954SCole Faust                                 TensorDescriptor
552*c217d954SCole Faust         {
553*c217d954SCole Faust             TensorShape{ 1 },
554*c217d954SCole Faust             DataType::QASYMM8,
555*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
556*c217d954SCole Faust             DataLayout::NHWC });
557*c217d954SCole Faust         INode *node_mul_2_y = _graph.node(id_mul_2_y);
558*c217d954SCole Faust         node_mul_2_y->set_common_node_parameters(NodeParams{ "mul_2_y", target });
559*c217d954SCole Faust         node_mul_2_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_2_y.npy", DataLayout::NHWC));
560*c217d954SCole Faust 
561*c217d954SCole Faust         NodeID id_block_2_1_Conv2D_bias = _graph.add_node<ConstNode>(
562*c217d954SCole Faust                                               TensorDescriptor
563*c217d954SCole Faust         {
564*c217d954SCole Faust             TensorShape{ 256 },
565*c217d954SCole Faust             DataType::S32,
566*c217d954SCole Faust             QuantizationInfo(1.1634580232566805e-06),
567*c217d954SCole Faust             DataLayout::NHWC });
568*c217d954SCole Faust         INode *node_block_2_1_Conv2D_bias = _graph.node(id_block_2_1_Conv2D_bias);
569*c217d954SCole Faust         node_block_2_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_2_1_Conv2D_bias", target });
570*c217d954SCole Faust         node_block_2_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_2_1_Conv2D_bias.npy", DataLayout::NHWC));
571*c217d954SCole Faust 
572*c217d954SCole Faust         NodeID id_block_2_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
573*c217d954SCole Faust                                                           TensorDescriptor
574*c217d954SCole Faust         {
575*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
576*c217d954SCole Faust             DataType::QASYMM8,
577*c217d954SCole Faust             QuantizationInfo(0.0003789655165746808, 132),
578*c217d954SCole Faust             DataLayout::NHWC });
579*c217d954SCole Faust         INode *node_block_2_1_FakeQuantWithMinMaxVars = _graph.node(id_block_2_1_FakeQuantWithMinMaxVars);
580*c217d954SCole Faust         node_block_2_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_2_1_FakeQuantWithMinMaxVars", target });
581*c217d954SCole Faust         node_block_2_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_2_1_FakeQuantWithMinMaxVars.npy",
582*c217d954SCole Faust                                                                                              DataLayout::NHWC));
583*c217d954SCole Faust 
584*c217d954SCole Faust         NodeID id_mul_1_y = _graph.add_node<ConstNode>(
585*c217d954SCole Faust                                 TensorDescriptor
586*c217d954SCole Faust         {
587*c217d954SCole Faust             TensorShape{ 1 },
588*c217d954SCole Faust             DataType::QASYMM8,
589*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
590*c217d954SCole Faust             DataLayout::NHWC });
591*c217d954SCole Faust         INode *node_mul_1_y = _graph.node(id_mul_1_y);
592*c217d954SCole Faust         node_mul_1_y->set_common_node_parameters(NodeParams{ "mul_1_y", target });
593*c217d954SCole Faust         node_mul_1_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_1_y.npy", DataLayout::NHWC));
594*c217d954SCole Faust 
595*c217d954SCole Faust         NodeID id_block_1_1_Conv2D_bias = _graph.add_node<ConstNode>(
596*c217d954SCole Faust                                               TensorDescriptor
597*c217d954SCole Faust         {
598*c217d954SCole Faust             TensorShape{ 256 },
599*c217d954SCole Faust             DataType::S32,
600*c217d954SCole Faust             QuantizationInfo(1.197920255435747e-06),
601*c217d954SCole Faust             DataLayout::NHWC });
602*c217d954SCole Faust         INode *node_block_1_1_Conv2D_bias = _graph.node(id_block_1_1_Conv2D_bias);
603*c217d954SCole Faust         node_block_1_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_1_1_Conv2D_bias", target });
604*c217d954SCole Faust         node_block_1_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_1_1_Conv2D_bias.npy", DataLayout::NHWC));
605*c217d954SCole Faust 
606*c217d954SCole Faust         NodeID id_block_1_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
607*c217d954SCole Faust                                                           TensorDescriptor
608*c217d954SCole Faust         {
609*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
610*c217d954SCole Faust             DataType::QASYMM8,
611*c217d954SCole Faust             QuantizationInfo(0.00038527738070115447, 132),
612*c217d954SCole Faust             DataLayout::NHWC });
613*c217d954SCole Faust         INode *node_block_1_1_FakeQuantWithMinMaxVars = _graph.node(id_block_1_1_FakeQuantWithMinMaxVars);
614*c217d954SCole Faust         node_block_1_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_1_1_FakeQuantWithMinMaxVars", target });
615*c217d954SCole Faust         node_block_1_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_1_1_FakeQuantWithMinMaxVars.npy",
616*c217d954SCole Faust                                                                                              DataLayout::NHWC));
617*c217d954SCole Faust 
618*c217d954SCole Faust         NodeID id_mul_y = _graph.add_node<ConstNode>(
619*c217d954SCole Faust                               TensorDescriptor
620*c217d954SCole Faust         {
621*c217d954SCole Faust             TensorShape{ 1 },
622*c217d954SCole Faust             DataType::QASYMM8,
623*c217d954SCole Faust             QuantizationInfo(0.0003921568568330258),
624*c217d954SCole Faust             DataLayout::NHWC });
625*c217d954SCole Faust         INode *node_mul_y = _graph.node(id_mul_y);
626*c217d954SCole Faust         node_mul_y->set_common_node_parameters(NodeParams{ "mul_y", target });
627*c217d954SCole Faust         node_mul_y->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/mul_y.npy", DataLayout::NHWC));
628*c217d954SCole Faust 
629*c217d954SCole Faust         NodeID id_block_0_1_Conv2D_bias = _graph.add_node<ConstNode>(
630*c217d954SCole Faust                                               TensorDescriptor
631*c217d954SCole Faust         {
632*c217d954SCole Faust             TensorShape{ 256 },
633*c217d954SCole Faust             DataType::S32,
634*c217d954SCole Faust             QuantizationInfo(1.315485519626236e-06),
635*c217d954SCole Faust             DataLayout::NHWC });
636*c217d954SCole Faust         INode *node_block_0_1_Conv2D_bias = _graph.node(id_block_0_1_Conv2D_bias);
637*c217d954SCole Faust         node_block_0_1_Conv2D_bias->set_common_node_parameters(NodeParams{ "block_0_1_Conv2D_bias", target });
638*c217d954SCole Faust         node_block_0_1_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_0_1_Conv2D_bias.npy", DataLayout::NHWC));
639*c217d954SCole Faust 
640*c217d954SCole Faust         NodeID id_block_0_1_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
641*c217d954SCole Faust                                                           TensorDescriptor
642*c217d954SCole Faust         {
643*c217d954SCole Faust             TensorShape{ 256, 3, 3, 256 },
644*c217d954SCole Faust             DataType::QASYMM8,
645*c217d954SCole Faust             QuantizationInfo(0.00039420535904355347, 129),
646*c217d954SCole Faust             DataLayout::NHWC });
647*c217d954SCole Faust         INode *node_block_0_1_FakeQuantWithMinMaxVars = _graph.node(id_block_0_1_FakeQuantWithMinMaxVars);
648*c217d954SCole Faust         node_block_0_1_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "block_0_1_FakeQuantWithMinMaxVars", target });
649*c217d954SCole Faust         node_block_0_1_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/block_0_1_FakeQuantWithMinMaxVars.npy",
650*c217d954SCole Faust                                                                                              DataLayout::NHWC));
651*c217d954SCole Faust 
652*c217d954SCole Faust         NodeID id_pre_residual_Conv2D_bias = _graph.add_node<ConstNode>(
653*c217d954SCole Faust                                                  TensorDescriptor
654*c217d954SCole Faust         {
655*c217d954SCole Faust             TensorShape{ 256 },
656*c217d954SCole Faust             DataType::S32,
657*c217d954SCole Faust             QuantizationInfo(1.7214160834555514e-06),
658*c217d954SCole Faust             DataLayout::NHWC });
659*c217d954SCole Faust         INode *node_pre_residual_Conv2D_bias = _graph.node(id_pre_residual_Conv2D_bias);
660*c217d954SCole Faust         node_pre_residual_Conv2D_bias->set_common_node_parameters(NodeParams{ "pre_residual_Conv2D_bias", target });
661*c217d954SCole Faust         node_pre_residual_Conv2D_bias->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/pre_residual_Conv2D_bias.npy", DataLayout::NHWC));
662*c217d954SCole Faust 
663*c217d954SCole Faust         NodeID id_pre_residual_FakeQuantWithMinMaxVars = _graph.add_node<ConstNode>(
664*c217d954SCole Faust                                                              TensorDescriptor
665*c217d954SCole Faust         {
666*c217d954SCole Faust             TensorShape{ 3, 3, 3, 256 },
667*c217d954SCole Faust             DataType::QASYMM8,
668*c217d954SCole Faust             QuantizationInfo(0.0004389610840007663, 127),
669*c217d954SCole Faust             DataLayout::NHWC });
670*c217d954SCole Faust         INode *node_pre_residual_FakeQuantWithMinMaxVars = _graph.node(id_pre_residual_FakeQuantWithMinMaxVars);
671*c217d954SCole Faust         node_pre_residual_FakeQuantWithMinMaxVars->set_common_node_parameters(NodeParams{ "pre_residual_FakeQuantWithMinMaxVars", target });
672*c217d954SCole Faust         node_pre_residual_FakeQuantWithMinMaxVars->output(0)->set_accessor(get_weights_accessor(data_path, "/cnn_data/edsr_model/pre_residual_FakeQuantWithMinMaxVars.npy",
673*c217d954SCole Faust                                                                                                 DataLayout::NHWC));
674*c217d954SCole Faust 
675*c217d954SCole Faust         TensorShape input_shape{};
676*c217d954SCole Faust         input_shape.set(0, 3, false).set(1, 360, false).set(2, 640, false).set(3, 1, false);
677*c217d954SCole Faust 
678*c217d954SCole Faust         NodeID id_input = _graph.add_node<InputNode>(
679*c217d954SCole Faust                               TensorDescriptor
680*c217d954SCole Faust         {
681*c217d954SCole Faust             input_shape,
682*c217d954SCole Faust             DataType::QASYMM8,
683*c217d954SCole Faust             QuantizationInfo(0.003921568859368563),
684*c217d954SCole Faust             DataLayout::NHWC });
685*c217d954SCole Faust         INode *node_input = _graph.node(id_input);
686*c217d954SCole Faust         node_input->set_common_node_parameters(NodeParams{ "input", target });
687*c217d954SCole Faust         node_input->output(0)->set_accessor(get_input_accessor(common_params));
688*c217d954SCole Faust 
689*c217d954SCole Faust         NodeID id_pre_residual_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
690*c217d954SCole Faust                                              PadStrideInfo
691*c217d954SCole Faust         {
692*c217d954SCole Faust             1, 1,
693*c217d954SCole Faust             1, 1,
694*c217d954SCole Faust             1, 1,
695*c217d954SCole Faust             DimensionRoundingType::FLOOR },
696*c217d954SCole Faust         1,
697*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
698*c217d954SCole Faust         FastMathHint::Disabled,
699*c217d954SCole Faust         QuantizationInfo(0.0033370566088706255, 96));
700*c217d954SCole Faust         INode *node_pre_residual_BiasAdd = _graph.node(id_pre_residual_BiasAdd);
701*c217d954SCole Faust         node_pre_residual_BiasAdd->set_common_node_parameters(NodeParams{ "pre_residual_BiasAdd", target });
702*c217d954SCole Faust         _graph.add_connection(id_input, 0, id_pre_residual_BiasAdd, 0);
703*c217d954SCole Faust         _graph.add_connection(id_pre_residual_FakeQuantWithMinMaxVars, 0, id_pre_residual_BiasAdd, 1);
704*c217d954SCole Faust         _graph.add_connection(id_pre_residual_Conv2D_bias, 0, id_pre_residual_BiasAdd, 2);
705*c217d954SCole Faust 
706*c217d954SCole Faust         NodeID id_block_0_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
707*c217d954SCole Faust                                           PadStrideInfo
708*c217d954SCole Faust         {
709*c217d954SCole Faust             1, 1,
710*c217d954SCole Faust             1, 1,
711*c217d954SCole Faust             1, 1,
712*c217d954SCole Faust             DimensionRoundingType::FLOOR },
713*c217d954SCole Faust         1,
714*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
715*c217d954SCole Faust         FastMathHint::Disabled,
716*c217d954SCole Faust         QuantizationInfo(0.007344874087721109, 185));
717*c217d954SCole Faust         INode *node_block_0_1_BiasAdd = _graph.node(id_block_0_1_BiasAdd);
718*c217d954SCole Faust         node_block_0_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_0_1_BiasAdd", target });
719*c217d954SCole Faust         _graph.add_connection(id_pre_residual_BiasAdd, 0, id_block_0_1_BiasAdd, 0);
720*c217d954SCole Faust         _graph.add_connection(id_block_0_1_FakeQuantWithMinMaxVars, 0, id_block_0_1_BiasAdd, 1);
721*c217d954SCole Faust         _graph.add_connection(id_block_0_1_Conv2D_bias, 0, id_block_0_1_BiasAdd, 2);
722*c217d954SCole Faust 
723*c217d954SCole Faust         NodeID id_mul = _graph.add_node<EltwiseLayerNode>(
724*c217d954SCole Faust                             descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.0006341293919831514, 174 } });
725*c217d954SCole Faust         INode *node_mul = _graph.node(id_mul);
726*c217d954SCole Faust         node_mul->set_common_node_parameters(NodeParams{ "mul", target });
727*c217d954SCole Faust         _graph.add_connection(id_block_0_1_BiasAdd, 0, id_mul, 0);
728*c217d954SCole Faust         _graph.add_connection(id_mul_y, 0, id_mul, 1);
729*c217d954SCole Faust 
730*c217d954SCole Faust         NodeID id_add = _graph.add_node<EltwiseLayerNode>(
731*c217d954SCole Faust                             descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0031092411372810602, 95 } });
732*c217d954SCole Faust         INode *node_add = _graph.node(id_add);
733*c217d954SCole Faust         node_add->set_common_node_parameters(NodeParams{ "add", target });
734*c217d954SCole Faust         _graph.add_connection(id_pre_residual_BiasAdd, 0, id_add, 0);
735*c217d954SCole Faust         _graph.add_connection(id_mul, 0, id_add, 1);
736*c217d954SCole Faust 
737*c217d954SCole Faust         NodeID id_block_1_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
738*c217d954SCole Faust                                           PadStrideInfo
739*c217d954SCole Faust         {
740*c217d954SCole Faust             1, 1,
741*c217d954SCole Faust             1, 1,
742*c217d954SCole Faust             1, 1,
743*c217d954SCole Faust             DimensionRoundingType::FLOOR },
744*c217d954SCole Faust         1,
745*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
746*c217d954SCole Faust         FastMathHint::Disabled,
747*c217d954SCole Faust         QuantizationInfo(0.005333727691322565, 117));
748*c217d954SCole Faust         INode *node_block_1_1_BiasAdd = _graph.node(id_block_1_1_BiasAdd);
749*c217d954SCole Faust         node_block_1_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_1_1_BiasAdd", target });
750*c217d954SCole Faust         _graph.add_connection(id_add, 0, id_block_1_1_BiasAdd, 0);
751*c217d954SCole Faust         _graph.add_connection(id_block_1_1_FakeQuantWithMinMaxVars, 0, id_block_1_1_BiasAdd, 1);
752*c217d954SCole Faust         _graph.add_connection(id_block_1_1_Conv2D_bias, 0, id_block_1_1_BiasAdd, 2);
753*c217d954SCole Faust 
754*c217d954SCole Faust         NodeID id_mul_1 = _graph.add_node<EltwiseLayerNode>(
755*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.0004965941770933568, 122 } });
756*c217d954SCole Faust         INode *node_mul_1 = _graph.node(id_mul_1);
757*c217d954SCole Faust         node_mul_1->set_common_node_parameters(NodeParams{ "mul_1", target });
758*c217d954SCole Faust         _graph.add_connection(id_block_1_1_BiasAdd, 0, id_mul_1, 0);
759*c217d954SCole Faust         _graph.add_connection(id_mul_1_y, 0, id_mul_1, 1);
760*c217d954SCole Faust 
761*c217d954SCole Faust         NodeID id_add_1 = _graph.add_node<EltwiseLayerNode>(
762*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0030700892675668, 96 } });
763*c217d954SCole Faust         INode *node_add_1 = _graph.node(id_add_1);
764*c217d954SCole Faust         node_add_1->set_common_node_parameters(NodeParams{ "add_1", target });
765*c217d954SCole Faust         _graph.add_connection(id_add, 0, id_add_1, 0);
766*c217d954SCole Faust         _graph.add_connection(id_mul_1, 0, id_add_1, 1);
767*c217d954SCole Faust 
768*c217d954SCole Faust         NodeID id_block_2_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
769*c217d954SCole Faust                                           PadStrideInfo
770*c217d954SCole Faust         {
771*c217d954SCole Faust             1, 1,
772*c217d954SCole Faust             1, 1,
773*c217d954SCole Faust             1, 1,
774*c217d954SCole Faust             DimensionRoundingType::FLOOR },
775*c217d954SCole Faust         1,
776*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
777*c217d954SCole Faust         FastMathHint::Disabled,
778*c217d954SCole Faust         QuantizationInfo(0.004199742339551449, 132));
779*c217d954SCole Faust         INode *node_block_2_1_BiasAdd = _graph.node(id_block_2_1_BiasAdd);
780*c217d954SCole Faust         node_block_2_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_2_1_BiasAdd", target });
781*c217d954SCole Faust         _graph.add_connection(id_add_1, 0, id_block_2_1_BiasAdd, 0);
782*c217d954SCole Faust         _graph.add_connection(id_block_2_1_FakeQuantWithMinMaxVars, 0, id_block_2_1_BiasAdd, 1);
783*c217d954SCole Faust         _graph.add_connection(id_block_2_1_Conv2D_bias, 0, id_block_2_1_BiasAdd, 2);
784*c217d954SCole Faust 
785*c217d954SCole Faust         NodeID id_mul_2 = _graph.add_node<EltwiseLayerNode>(
786*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.0004133903712499887, 130 } });
787*c217d954SCole Faust         INode *node_mul_2 = _graph.node(id_mul_2);
788*c217d954SCole Faust         node_mul_2->set_common_node_parameters(NodeParams{ "mul_2", target });
789*c217d954SCole Faust         _graph.add_connection(id_block_2_1_BiasAdd, 0, id_mul_2, 0);
790*c217d954SCole Faust         _graph.add_connection(id_mul_2_y, 0, id_mul_2, 1);
791*c217d954SCole Faust 
792*c217d954SCole Faust         NodeID id_add_2 = _graph.add_node<EltwiseLayerNode>(
793*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.003026385325938463, 94 } });
794*c217d954SCole Faust         INode *node_add_2 = _graph.node(id_add_2);
795*c217d954SCole Faust         node_add_2->set_common_node_parameters(NodeParams{ "add_2", target });
796*c217d954SCole Faust         _graph.add_connection(id_add_1, 0, id_add_2, 0);
797*c217d954SCole Faust         _graph.add_connection(id_mul_2, 0, id_add_2, 1);
798*c217d954SCole Faust 
799*c217d954SCole Faust         NodeID id_block_3_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
800*c217d954SCole Faust                                           PadStrideInfo
801*c217d954SCole Faust         {
802*c217d954SCole Faust             1, 1,
803*c217d954SCole Faust             1, 1,
804*c217d954SCole Faust             1, 1,
805*c217d954SCole Faust             DimensionRoundingType::FLOOR },
806*c217d954SCole Faust         1,
807*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
808*c217d954SCole Faust         FastMathHint::Disabled,
809*c217d954SCole Faust         QuantizationInfo(0.003977528307586908, 142));
810*c217d954SCole Faust         INode *node_block_3_1_BiasAdd = _graph.node(id_block_3_1_BiasAdd);
811*c217d954SCole Faust         node_block_3_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_3_1_BiasAdd", target });
812*c217d954SCole Faust         _graph.add_connection(id_add_2, 0, id_block_3_1_BiasAdd, 0);
813*c217d954SCole Faust         _graph.add_connection(id_block_3_1_FakeQuantWithMinMaxVars, 0, id_block_3_1_BiasAdd, 1);
814*c217d954SCole Faust         _graph.add_connection(id_block_3_1_Conv2D_bias, 0, id_block_3_1_BiasAdd, 2);
815*c217d954SCole Faust 
816*c217d954SCole Faust         NodeID id_mul_3 = _graph.add_node<EltwiseLayerNode>(
817*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.0003943995980080217, 141 } });
818*c217d954SCole Faust         INode *node_mul_3 = _graph.node(id_mul_3);
819*c217d954SCole Faust         node_mul_3->set_common_node_parameters(NodeParams{ "mul_3", target });
820*c217d954SCole Faust         _graph.add_connection(id_block_3_1_BiasAdd, 0, id_mul_3, 0);
821*c217d954SCole Faust         _graph.add_connection(id_mul_3_y, 0, id_mul_3, 1);
822*c217d954SCole Faust 
823*c217d954SCole Faust         NodeID id_add_3 = _graph.add_node<EltwiseLayerNode>(
824*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.003101327223703265, 98 } });
825*c217d954SCole Faust         INode *node_add_3 = _graph.node(id_add_3);
826*c217d954SCole Faust         node_add_3->set_common_node_parameters(NodeParams{ "add_3", target });
827*c217d954SCole Faust         _graph.add_connection(id_add_2, 0, id_add_3, 0);
828*c217d954SCole Faust         _graph.add_connection(id_mul_3, 0, id_add_3, 1);
829*c217d954SCole Faust 
830*c217d954SCole Faust         NodeID id_block_4_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
831*c217d954SCole Faust                                           PadStrideInfo
832*c217d954SCole Faust         {
833*c217d954SCole Faust             1, 1,
834*c217d954SCole Faust             1, 1,
835*c217d954SCole Faust             1, 1,
836*c217d954SCole Faust             DimensionRoundingType::FLOOR },
837*c217d954SCole Faust         1,
838*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
839*c217d954SCole Faust         FastMathHint::Disabled,
840*c217d954SCole Faust         QuantizationInfo(0.0045388080179691315, 146));
841*c217d954SCole Faust         INode *node_block_4_1_BiasAdd = _graph.node(id_block_4_1_BiasAdd);
842*c217d954SCole Faust         node_block_4_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_4_1_BiasAdd", target });
843*c217d954SCole Faust         _graph.add_connection(id_add_3, 0, id_block_4_1_BiasAdd, 0);
844*c217d954SCole Faust         _graph.add_connection(id_block_4_1_FakeQuantWithMinMaxVars, 0, id_block_4_1_BiasAdd, 1);
845*c217d954SCole Faust         _graph.add_connection(id_block_4_1_Conv2D_bias, 0, id_block_4_1_BiasAdd, 2);
846*c217d954SCole Faust 
847*c217d954SCole Faust         NodeID id_mul_4 = _graph.add_node<EltwiseLayerNode>(
848*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.00044342130422592163, 143 } });
849*c217d954SCole Faust         INode *node_mul_4 = _graph.node(id_mul_4);
850*c217d954SCole Faust         node_mul_4->set_common_node_parameters(NodeParams{ "mul_4", target });
851*c217d954SCole Faust         _graph.add_connection(id_block_4_1_BiasAdd, 0, id_mul_4, 0);
852*c217d954SCole Faust         _graph.add_connection(id_mul_4_y, 0, id_mul_4, 1);
853*c217d954SCole Faust 
854*c217d954SCole Faust         NodeID id_add_4 = _graph.add_node<EltwiseLayerNode>(
855*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.003150839824229479, 98 } });
856*c217d954SCole Faust         INode *node_add_4 = _graph.node(id_add_4);
857*c217d954SCole Faust         node_add_4->set_common_node_parameters(NodeParams{ "add_4", target });
858*c217d954SCole Faust         _graph.add_connection(id_add_3, 0, id_add_4, 0);
859*c217d954SCole Faust         _graph.add_connection(id_mul_4, 0, id_add_4, 1);
860*c217d954SCole Faust 
861*c217d954SCole Faust         NodeID id_block_5_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
862*c217d954SCole Faust                                           PadStrideInfo
863*c217d954SCole Faust         {
864*c217d954SCole Faust             1, 1,
865*c217d954SCole Faust             1, 1,
866*c217d954SCole Faust             1, 1,
867*c217d954SCole Faust             DimensionRoundingType::FLOOR },
868*c217d954SCole Faust         1,
869*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
870*c217d954SCole Faust         FastMathHint::Disabled,
871*c217d954SCole Faust         QuantizationInfo(0.00402890844270587, 132));
872*c217d954SCole Faust         INode *node_block_5_1_BiasAdd = _graph.node(id_block_5_1_BiasAdd);
873*c217d954SCole Faust         node_block_5_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_5_1_BiasAdd", target });
874*c217d954SCole Faust         _graph.add_connection(id_add_4, 0, id_block_5_1_BiasAdd, 0);
875*c217d954SCole Faust         _graph.add_connection(id_block_5_1_FakeQuantWithMinMaxVars, 0, id_block_5_1_BiasAdd, 1);
876*c217d954SCole Faust         _graph.add_connection(id_block_5_1_Conv2D_bias, 0, id_block_5_1_BiasAdd, 2);
877*c217d954SCole Faust 
878*c217d954SCole Faust         NodeID id_mul_5 = _graph.add_node<EltwiseLayerNode>(
879*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.0004023382789455354, 132 } });
880*c217d954SCole Faust         INode *node_mul_5 = _graph.node(id_mul_5);
881*c217d954SCole Faust         node_mul_5->set_common_node_parameters(NodeParams{ "mul_5", target });
882*c217d954SCole Faust         _graph.add_connection(id_block_5_1_BiasAdd, 0, id_mul_5, 0);
883*c217d954SCole Faust         _graph.add_connection(id_mul_5_y, 0, id_mul_5, 1);
884*c217d954SCole Faust 
885*c217d954SCole Faust         NodeID id_add_5 = _graph.add_node<EltwiseLayerNode>(
886*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0030975888948887587, 94 } });
887*c217d954SCole Faust         INode *node_add_5 = _graph.node(id_add_5);
888*c217d954SCole Faust         node_add_5->set_common_node_parameters(NodeParams{ "add_5", target });
889*c217d954SCole Faust         _graph.add_connection(id_add_4, 0, id_add_5, 0);
890*c217d954SCole Faust         _graph.add_connection(id_mul_5, 0, id_add_5, 1);
891*c217d954SCole Faust 
892*c217d954SCole Faust         NodeID id_block_6_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
893*c217d954SCole Faust                                           PadStrideInfo
894*c217d954SCole Faust         {
895*c217d954SCole Faust             1, 1,
896*c217d954SCole Faust             1, 1,
897*c217d954SCole Faust             1, 1,
898*c217d954SCole Faust             DimensionRoundingType::FLOOR },
899*c217d954SCole Faust         1,
900*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
901*c217d954SCole Faust         FastMathHint::Disabled,
902*c217d954SCole Faust         QuantizationInfo(0.00421866774559021, 125));
903*c217d954SCole Faust         INode *node_block_6_1_BiasAdd = _graph.node(id_block_6_1_BiasAdd);
904*c217d954SCole Faust         node_block_6_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_6_1_BiasAdd", target });
905*c217d954SCole Faust         _graph.add_connection(id_add_5, 0, id_block_6_1_BiasAdd, 0);
906*c217d954SCole Faust         _graph.add_connection(id_block_6_1_FakeQuantWithMinMaxVars, 0, id_block_6_1_BiasAdd, 1);
907*c217d954SCole Faust         _graph.add_connection(id_block_6_1_Conv2D_bias, 0, id_block_6_1_BiasAdd, 2);
908*c217d954SCole Faust 
909*c217d954SCole Faust         NodeID id_mul_6 = _graph.add_node<EltwiseLayerNode>(
910*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.00041950203012675047, 125 } });
911*c217d954SCole Faust         INode *node_mul_6 = _graph.node(id_mul_6);
912*c217d954SCole Faust         node_mul_6->set_common_node_parameters(NodeParams{ "mul_6", target });
913*c217d954SCole Faust         _graph.add_connection(id_block_6_1_BiasAdd, 0, id_mul_6, 0);
914*c217d954SCole Faust         _graph.add_connection(id_mul_6_y, 0, id_mul_6, 1);
915*c217d954SCole Faust 
916*c217d954SCole Faust         NodeID id_add_6 = _graph.add_node<EltwiseLayerNode>(
917*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.003155382815748453, 92 } });
918*c217d954SCole Faust         INode *node_add_6 = _graph.node(id_add_6);
919*c217d954SCole Faust         node_add_6->set_common_node_parameters(NodeParams{ "add_6", target });
920*c217d954SCole Faust         _graph.add_connection(id_add_5, 0, id_add_6, 0);
921*c217d954SCole Faust         _graph.add_connection(id_mul_6, 0, id_add_6, 1);
922*c217d954SCole Faust 
923*c217d954SCole Faust         NodeID id_block_7_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
924*c217d954SCole Faust                                           PadStrideInfo
925*c217d954SCole Faust         {
926*c217d954SCole Faust             1, 1,
927*c217d954SCole Faust             1, 1,
928*c217d954SCole Faust             1, 1,
929*c217d954SCole Faust             DimensionRoundingType::FLOOR },
930*c217d954SCole Faust         1,
931*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
932*c217d954SCole Faust         FastMathHint::Disabled,
933*c217d954SCole Faust         QuantizationInfo(0.004250136204063892, 143));
934*c217d954SCole Faust         INode *node_block_7_1_BiasAdd = _graph.node(id_block_7_1_BiasAdd);
935*c217d954SCole Faust         node_block_7_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_7_1_BiasAdd", target });
936*c217d954SCole Faust         _graph.add_connection(id_add_6, 0, id_block_7_1_BiasAdd, 0);
937*c217d954SCole Faust         _graph.add_connection(id_block_7_1_FakeQuantWithMinMaxVars, 0, id_block_7_1_BiasAdd, 1);
938*c217d954SCole Faust         _graph.add_connection(id_block_7_1_Conv2D_bias, 0, id_block_7_1_BiasAdd, 2);
939*c217d954SCole Faust 
940*c217d954SCole Faust         NodeID id_mul_7 = _graph.add_node<EltwiseLayerNode>(
941*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.00042401350219734013, 142 } });
942*c217d954SCole Faust         INode *node_mul_7 = _graph.node(id_mul_7);
943*c217d954SCole Faust         node_mul_7->set_common_node_parameters(NodeParams{ "mul_7", target });
944*c217d954SCole Faust         _graph.add_connection(id_block_7_1_BiasAdd, 0, id_mul_7, 0);
945*c217d954SCole Faust         _graph.add_connection(id_mul_7_y, 0, id_mul_7, 1);
946*c217d954SCole Faust 
947*c217d954SCole Faust         NodeID id_add_7 = _graph.add_node<EltwiseLayerNode>(
948*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0031760605052113533, 86 } });
949*c217d954SCole Faust         INode *node_add_7 = _graph.node(id_add_7);
950*c217d954SCole Faust         node_add_7->set_common_node_parameters(NodeParams{ "add_7", target });
951*c217d954SCole Faust         _graph.add_connection(id_add_6, 0, id_add_7, 0);
952*c217d954SCole Faust         _graph.add_connection(id_mul_7, 0, id_add_7, 1);
953*c217d954SCole Faust 
954*c217d954SCole Faust         NodeID id_block_8_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
955*c217d954SCole Faust                                           PadStrideInfo
956*c217d954SCole Faust         {
957*c217d954SCole Faust             1, 1,
958*c217d954SCole Faust             1, 1,
959*c217d954SCole Faust             1, 1,
960*c217d954SCole Faust             DimensionRoundingType::FLOOR },
961*c217d954SCole Faust         1,
962*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
963*c217d954SCole Faust         FastMathHint::Disabled,
964*c217d954SCole Faust         QuantizationInfo(0.004277155734598637, 123));
965*c217d954SCole Faust         INode *node_block_8_1_BiasAdd = _graph.node(id_block_8_1_BiasAdd);
966*c217d954SCole Faust         node_block_8_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_8_1_BiasAdd", target });
967*c217d954SCole Faust         _graph.add_connection(id_add_7, 0, id_block_8_1_BiasAdd, 0);
968*c217d954SCole Faust         _graph.add_connection(id_block_8_1_FakeQuantWithMinMaxVars, 0, id_block_8_1_BiasAdd, 1);
969*c217d954SCole Faust         _graph.add_connection(id_block_8_1_Conv2D_bias, 0, id_block_8_1_BiasAdd, 2);
970*c217d954SCole Faust 
971*c217d954SCole Faust         NodeID id_mul_8 = _graph.add_node<EltwiseLayerNode>(
972*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.00042673019925132394, 123 } });
973*c217d954SCole Faust         INode *node_mul_8 = _graph.node(id_mul_8);
974*c217d954SCole Faust         node_mul_8->set_common_node_parameters(NodeParams{ "mul_8", target });
975*c217d954SCole Faust         _graph.add_connection(id_block_8_1_BiasAdd, 0, id_mul_8, 0);
976*c217d954SCole Faust         _graph.add_connection(id_mul_8_y, 0, id_mul_8, 1);
977*c217d954SCole Faust 
978*c217d954SCole Faust         NodeID id_add_8 = _graph.add_node<EltwiseLayerNode>(
979*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0032156009692698717, 86 } });
980*c217d954SCole Faust         INode *node_add_8 = _graph.node(id_add_8);
981*c217d954SCole Faust         node_add_8->set_common_node_parameters(NodeParams{ "add_8", target });
982*c217d954SCole Faust         _graph.add_connection(id_add_7, 0, id_add_8, 0);
983*c217d954SCole Faust         _graph.add_connection(id_mul_8, 0, id_add_8, 1);
984*c217d954SCole Faust 
985*c217d954SCole Faust         NodeID id_block_9_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
986*c217d954SCole Faust                                           PadStrideInfo
987*c217d954SCole Faust         {
988*c217d954SCole Faust             1, 1,
989*c217d954SCole Faust             1, 1,
990*c217d954SCole Faust             1, 1,
991*c217d954SCole Faust             DimensionRoundingType::FLOOR },
992*c217d954SCole Faust         1,
993*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
994*c217d954SCole Faust         FastMathHint::Disabled,
995*c217d954SCole Faust         QuantizationInfo(0.00445037754252553, 129));
996*c217d954SCole Faust         INode *node_block_9_1_BiasAdd = _graph.node(id_block_9_1_BiasAdd);
997*c217d954SCole Faust         node_block_9_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_9_1_BiasAdd", target });
998*c217d954SCole Faust         _graph.add_connection(id_add_8, 0, id_block_9_1_BiasAdd, 0);
999*c217d954SCole Faust         _graph.add_connection(id_block_9_1_FakeQuantWithMinMaxVars, 0, id_block_9_1_BiasAdd, 1);
1000*c217d954SCole Faust         _graph.add_connection(id_block_9_1_Conv2D_bias, 0, id_block_9_1_BiasAdd, 2);
1001*c217d954SCole Faust 
1002*c217d954SCole Faust         NodeID id_mul_9 = _graph.add_node<EltwiseLayerNode>(
1003*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.0004448975087143481, 129 } });
1004*c217d954SCole Faust         INode *node_mul_9 = _graph.node(id_mul_9);
1005*c217d954SCole Faust         node_mul_9->set_common_node_parameters(NodeParams{ "mul_9", target });
1006*c217d954SCole Faust         _graph.add_connection(id_block_9_1_BiasAdd, 0, id_mul_9, 0);
1007*c217d954SCole Faust         _graph.add_connection(id_mul_9_y, 0, id_mul_9, 1);
1008*c217d954SCole Faust 
1009*c217d954SCole Faust         NodeID id_add_9 = _graph.add_node<EltwiseLayerNode>(
1010*c217d954SCole Faust                               descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0032742770854383707, 80 } });
1011*c217d954SCole Faust         INode *node_add_9 = _graph.node(id_add_9);
1012*c217d954SCole Faust         node_add_9->set_common_node_parameters(NodeParams{ "add_9", target });
1013*c217d954SCole Faust         _graph.add_connection(id_add_8, 0, id_add_9, 0);
1014*c217d954SCole Faust         _graph.add_connection(id_mul_9, 0, id_add_9, 1);
1015*c217d954SCole Faust 
1016*c217d954SCole Faust         NodeID id_block_10_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
1017*c217d954SCole Faust                                            PadStrideInfo
1018*c217d954SCole Faust         {
1019*c217d954SCole Faust             1, 1,
1020*c217d954SCole Faust             1, 1,
1021*c217d954SCole Faust             1, 1,
1022*c217d954SCole Faust             DimensionRoundingType::FLOOR },
1023*c217d954SCole Faust         1,
1024*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
1025*c217d954SCole Faust         FastMathHint::Disabled,
1026*c217d954SCole Faust         QuantizationInfo(0.003614710411056876, 131));
1027*c217d954SCole Faust         INode *node_block_10_1_BiasAdd = _graph.node(id_block_10_1_BiasAdd);
1028*c217d954SCole Faust         node_block_10_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_10_1_BiasAdd", target });
1029*c217d954SCole Faust         _graph.add_connection(id_add_9, 0, id_block_10_1_BiasAdd, 0);
1030*c217d954SCole Faust         _graph.add_connection(id_block_10_1_FakeQuantWithMinMaxVars, 0, id_block_10_1_BiasAdd, 1);
1031*c217d954SCole Faust         _graph.add_connection(id_block_10_1_Conv2D_bias, 0, id_block_10_1_BiasAdd, 2);
1032*c217d954SCole Faust 
1033*c217d954SCole Faust         NodeID id_mul_10 = _graph.add_node<EltwiseLayerNode>(
1034*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.00036083892337046564, 130 } });
1035*c217d954SCole Faust         INode *node_mul_10 = _graph.node(id_mul_10);
1036*c217d954SCole Faust         node_mul_10->set_common_node_parameters(NodeParams{ "mul_10", target });
1037*c217d954SCole Faust         _graph.add_connection(id_block_10_1_BiasAdd, 0, id_mul_10, 0);
1038*c217d954SCole Faust         _graph.add_connection(id_mul_10_y, 0, id_mul_10, 1);
1039*c217d954SCole Faust 
1040*c217d954SCole Faust         NodeID id_add_10 = _graph.add_node<EltwiseLayerNode>(
1041*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0031881770119071007, 81 } });
1042*c217d954SCole Faust         INode *node_add_10 = _graph.node(id_add_10);
1043*c217d954SCole Faust         node_add_10->set_common_node_parameters(NodeParams{ "add_10", target });
1044*c217d954SCole Faust         _graph.add_connection(id_add_9, 0, id_add_10, 0);
1045*c217d954SCole Faust         _graph.add_connection(id_mul_10, 0, id_add_10, 1);
1046*c217d954SCole Faust 
1047*c217d954SCole Faust         NodeID id_block_11_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
1048*c217d954SCole Faust                                            PadStrideInfo
1049*c217d954SCole Faust         {
1050*c217d954SCole Faust             1, 1,
1051*c217d954SCole Faust             1, 1,
1052*c217d954SCole Faust             1, 1,
1053*c217d954SCole Faust             DimensionRoundingType::FLOOR },
1054*c217d954SCole Faust         1,
1055*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
1056*c217d954SCole Faust         FastMathHint::Disabled,
1057*c217d954SCole Faust         QuantizationInfo(0.003969002980738878, 133));
1058*c217d954SCole Faust         INode *node_block_11_1_BiasAdd = _graph.node(id_block_11_1_BiasAdd);
1059*c217d954SCole Faust         node_block_11_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_11_1_BiasAdd", target });
1060*c217d954SCole Faust         _graph.add_connection(id_add_10, 0, id_block_11_1_BiasAdd, 0);
1061*c217d954SCole Faust         _graph.add_connection(id_block_11_1_FakeQuantWithMinMaxVars, 0, id_block_11_1_BiasAdd, 1);
1062*c217d954SCole Faust         _graph.add_connection(id_block_11_1_Conv2D_bias, 0, id_block_11_1_BiasAdd, 2);
1063*c217d954SCole Faust 
1064*c217d954SCole Faust         NodeID id_mul_11 = _graph.add_node<EltwiseLayerNode>(
1065*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.0003968806122429669, 133 } });
1066*c217d954SCole Faust         INode *node_mul_11 = _graph.node(id_mul_11);
1067*c217d954SCole Faust         node_mul_11->set_common_node_parameters(NodeParams{ "mul_11", target });
1068*c217d954SCole Faust         _graph.add_connection(id_block_11_1_BiasAdd, 0, id_mul_11, 0);
1069*c217d954SCole Faust         _graph.add_connection(id_mul_11_y, 0, id_mul_11, 1);
1070*c217d954SCole Faust 
1071*c217d954SCole Faust         NodeID id_add_11 = _graph.add_node<EltwiseLayerNode>(
1072*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0032707711216062307, 80 } });
1073*c217d954SCole Faust         INode *node_add_11 = _graph.node(id_add_11);
1074*c217d954SCole Faust         node_add_11->set_common_node_parameters(NodeParams{ "add_11", target });
1075*c217d954SCole Faust         _graph.add_connection(id_add_10, 0, id_add_11, 0);
1076*c217d954SCole Faust         _graph.add_connection(id_mul_11, 0, id_add_11, 1);
1077*c217d954SCole Faust 
1078*c217d954SCole Faust         NodeID id_block_12_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
1079*c217d954SCole Faust                                            PadStrideInfo
1080*c217d954SCole Faust         {
1081*c217d954SCole Faust             1, 1,
1082*c217d954SCole Faust             1, 1,
1083*c217d954SCole Faust             1, 1,
1084*c217d954SCole Faust             DimensionRoundingType::FLOOR },
1085*c217d954SCole Faust         1,
1086*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
1087*c217d954SCole Faust         FastMathHint::Disabled,
1088*c217d954SCole Faust         QuantizationInfo(0.004366801120340824, 110));
1089*c217d954SCole Faust         INode *node_block_12_1_BiasAdd = _graph.node(id_block_12_1_BiasAdd);
1090*c217d954SCole Faust         node_block_12_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_12_1_BiasAdd", target });
1091*c217d954SCole Faust         _graph.add_connection(id_add_11, 0, id_block_12_1_BiasAdd, 0);
1092*c217d954SCole Faust         _graph.add_connection(id_block_12_1_FakeQuantWithMinMaxVars, 0, id_block_12_1_BiasAdd, 1);
1093*c217d954SCole Faust         _graph.add_connection(id_block_12_1_Conv2D_bias, 0, id_block_12_1_BiasAdd, 2);
1094*c217d954SCole Faust 
1095*c217d954SCole Faust         NodeID id_mul_12 = _graph.add_node<EltwiseLayerNode>(
1096*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.0004365936329122633, 110 } });
1097*c217d954SCole Faust         INode *node_mul_12 = _graph.node(id_mul_12);
1098*c217d954SCole Faust         node_mul_12->set_common_node_parameters(NodeParams{ "mul_12", target });
1099*c217d954SCole Faust         _graph.add_connection(id_block_12_1_BiasAdd, 0, id_mul_12, 0);
1100*c217d954SCole Faust         _graph.add_connection(id_mul_12_y, 0, id_mul_12, 1);
1101*c217d954SCole Faust 
1102*c217d954SCole Faust         NodeID id_add_12 = _graph.add_node<EltwiseLayerNode>(
1103*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.003275055903941393, 79 } });
1104*c217d954SCole Faust         INode *node_add_12 = _graph.node(id_add_12);
1105*c217d954SCole Faust         node_add_12->set_common_node_parameters(NodeParams{ "add_12", target });
1106*c217d954SCole Faust         _graph.add_connection(id_add_11, 0, id_add_12, 0);
1107*c217d954SCole Faust         _graph.add_connection(id_mul_12, 0, id_add_12, 1);
1108*c217d954SCole Faust 
1109*c217d954SCole Faust         NodeID id_block_13_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
1110*c217d954SCole Faust                                            PadStrideInfo
1111*c217d954SCole Faust         {
1112*c217d954SCole Faust             1, 1,
1113*c217d954SCole Faust             1, 1,
1114*c217d954SCole Faust             1, 1,
1115*c217d954SCole Faust             DimensionRoundingType::FLOOR },
1116*c217d954SCole Faust         1,
1117*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
1118*c217d954SCole Faust         FastMathHint::Disabled,
1119*c217d954SCole Faust         QuantizationInfo(0.004386766813695431, 139));
1120*c217d954SCole Faust         INode *node_block_13_1_BiasAdd = _graph.node(id_block_13_1_BiasAdd);
1121*c217d954SCole Faust         node_block_13_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_13_1_BiasAdd", target });
1122*c217d954SCole Faust         _graph.add_connection(id_add_12, 0, id_block_13_1_BiasAdd, 0);
1123*c217d954SCole Faust         _graph.add_connection(id_block_13_1_FakeQuantWithMinMaxVars, 0, id_block_13_1_BiasAdd, 1);
1124*c217d954SCole Faust         _graph.add_connection(id_block_13_1_Conv2D_bias, 0, id_block_13_1_BiasAdd, 2);
1125*c217d954SCole Faust 
1126*c217d954SCole Faust         NodeID id_mul_13 = _graph.add_node<EltwiseLayerNode>(
1127*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.0004385628562886268, 139 } });
1128*c217d954SCole Faust         INode *node_mul_13 = _graph.node(id_mul_13);
1129*c217d954SCole Faust         node_mul_13->set_common_node_parameters(NodeParams{ "mul_13", target });
1130*c217d954SCole Faust         _graph.add_connection(id_block_13_1_BiasAdd, 0, id_mul_13, 0);
1131*c217d954SCole Faust         _graph.add_connection(id_mul_13_y, 0, id_mul_13, 1);
1132*c217d954SCole Faust 
1133*c217d954SCole Faust         NodeID id_add_13 = _graph.add_node<EltwiseLayerNode>(
1134*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0033287261612713337, 78 } });
1135*c217d954SCole Faust         INode *node_add_13 = _graph.node(id_add_13);
1136*c217d954SCole Faust         node_add_13->set_common_node_parameters(NodeParams{ "add_13", target });
1137*c217d954SCole Faust         _graph.add_connection(id_add_12, 0, id_add_13, 0);
1138*c217d954SCole Faust         _graph.add_connection(id_mul_13, 0, id_add_13, 1);
1139*c217d954SCole Faust 
1140*c217d954SCole Faust         NodeID id_block_14_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
1141*c217d954SCole Faust                                            PadStrideInfo
1142*c217d954SCole Faust         {
1143*c217d954SCole Faust             1, 1,
1144*c217d954SCole Faust             1, 1,
1145*c217d954SCole Faust             1, 1,
1146*c217d954SCole Faust             DimensionRoundingType::FLOOR },
1147*c217d954SCole Faust         1,
1148*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
1149*c217d954SCole Faust         FastMathHint::Disabled,
1150*c217d954SCole Faust         QuantizationInfo(0.0038069337606430054, 130));
1151*c217d954SCole Faust         INode *node_block_14_1_BiasAdd = _graph.node(id_block_14_1_BiasAdd);
1152*c217d954SCole Faust         node_block_14_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_14_1_BiasAdd", target });
1153*c217d954SCole Faust         _graph.add_connection(id_add_13, 0, id_block_14_1_BiasAdd, 0);
1154*c217d954SCole Faust         _graph.add_connection(id_block_14_1_FakeQuantWithMinMaxVars, 0, id_block_14_1_BiasAdd, 1);
1155*c217d954SCole Faust         _graph.add_connection(id_block_14_1_Conv2D_bias, 0, id_block_14_1_BiasAdd, 2);
1156*c217d954SCole Faust 
1157*c217d954SCole Faust         NodeID id_mul_14 = _graph.add_node<EltwiseLayerNode>(
1158*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.00037829321809113026, 130 } });
1159*c217d954SCole Faust         INode *node_mul_14 = _graph.node(id_mul_14);
1160*c217d954SCole Faust         node_mul_14->set_common_node_parameters(NodeParams{ "mul_14", target });
1161*c217d954SCole Faust         _graph.add_connection(id_block_14_1_BiasAdd, 0, id_mul_14, 0);
1162*c217d954SCole Faust         _graph.add_connection(id_mul_14_y, 0, id_mul_14, 1);
1163*c217d954SCole Faust 
1164*c217d954SCole Faust         NodeID id_add_14 = _graph.add_node<EltwiseLayerNode>(
1165*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0033590947277843952, 77 } });
1166*c217d954SCole Faust         INode *node_add_14 = _graph.node(id_add_14);
1167*c217d954SCole Faust         node_add_14->set_common_node_parameters(NodeParams{ "add_14", target });
1168*c217d954SCole Faust         _graph.add_connection(id_add_13, 0, id_add_14, 0);
1169*c217d954SCole Faust         _graph.add_connection(id_mul_14, 0, id_add_14, 1);
1170*c217d954SCole Faust 
1171*c217d954SCole Faust         NodeID id_block_15_1_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
1172*c217d954SCole Faust                                            PadStrideInfo
1173*c217d954SCole Faust         {
1174*c217d954SCole Faust             1, 1,
1175*c217d954SCole Faust             1, 1,
1176*c217d954SCole Faust             1, 1,
1177*c217d954SCole Faust             DimensionRoundingType::FLOOR },
1178*c217d954SCole Faust         1,
1179*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
1180*c217d954SCole Faust         FastMathHint::Disabled,
1181*c217d954SCole Faust         QuantizationInfo(0.004009159281849861, 130));
1182*c217d954SCole Faust         INode *node_block_15_1_BiasAdd = _graph.node(id_block_15_1_BiasAdd);
1183*c217d954SCole Faust         node_block_15_1_BiasAdd->set_common_node_parameters(NodeParams{ "block_15_1_BiasAdd", target });
1184*c217d954SCole Faust         _graph.add_connection(id_add_14, 0, id_block_15_1_BiasAdd, 0);
1185*c217d954SCole Faust         _graph.add_connection(id_block_15_1_FakeQuantWithMinMaxVars, 0, id_block_15_1_BiasAdd, 1);
1186*c217d954SCole Faust         _graph.add_connection(id_block_15_1_Conv2D_bias, 0, id_block_15_1_BiasAdd, 2);
1187*c217d954SCole Faust 
1188*c217d954SCole Faust         NodeID id_mul_15 = _graph.add_node<EltwiseLayerNode>(
1189*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Mul, QuantizationInfo{ 0.0004008286341559142, 130 } });
1190*c217d954SCole Faust         INode *node_mul_15 = _graph.node(id_mul_15);
1191*c217d954SCole Faust         node_mul_15->set_common_node_parameters(NodeParams{ "mul_15", target });
1192*c217d954SCole Faust         _graph.add_connection(id_block_15_1_BiasAdd, 0, id_mul_15, 0);
1193*c217d954SCole Faust         _graph.add_connection(id_mul_15_y, 0, id_mul_15, 1);
1194*c217d954SCole Faust 
1195*c217d954SCole Faust         NodeID id_add_15 = _graph.add_node<EltwiseLayerNode>(
1196*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0035031239967793226, 78 } });
1197*c217d954SCole Faust         INode *node_add_15 = _graph.node(id_add_15);
1198*c217d954SCole Faust         node_add_15->set_common_node_parameters(NodeParams{ "add_15", target });
1199*c217d954SCole Faust         _graph.add_connection(id_add_14, 0, id_add_15, 0);
1200*c217d954SCole Faust         _graph.add_connection(id_mul_15, 0, id_add_15, 1);
1201*c217d954SCole Faust 
1202*c217d954SCole Faust         NodeID id_post_residual_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
1203*c217d954SCole Faust                                               PadStrideInfo
1204*c217d954SCole Faust         {
1205*c217d954SCole Faust             1, 1,
1206*c217d954SCole Faust             1, 1,
1207*c217d954SCole Faust             1, 1,
1208*c217d954SCole Faust             DimensionRoundingType::FLOOR },
1209*c217d954SCole Faust         1,
1210*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
1211*c217d954SCole Faust         FastMathHint::Disabled,
1212*c217d954SCole Faust         QuantizationInfo(0.005167999770492315, 112));
1213*c217d954SCole Faust         INode *node_post_residual_BiasAdd = _graph.node(id_post_residual_BiasAdd);
1214*c217d954SCole Faust         node_post_residual_BiasAdd->set_common_node_parameters(NodeParams{ "post_residual_BiasAdd", target });
1215*c217d954SCole Faust         _graph.add_connection(id_add_15, 0, id_post_residual_BiasAdd, 0);
1216*c217d954SCole Faust         _graph.add_connection(id_post_residual_FakeQuantWithMinMaxVars, 0, id_post_residual_BiasAdd, 1);
1217*c217d954SCole Faust         _graph.add_connection(id_post_residual_Conv2D_bias, 0, id_post_residual_BiasAdd, 2);
1218*c217d954SCole Faust 
1219*c217d954SCole Faust         NodeID id_add_16 = _graph.add_node<EltwiseLayerNode>(
1220*c217d954SCole Faust                                descriptors::EltwiseLayerDescriptor{ EltwiseOperation::Add, QuantizationInfo{ 0.0065071373246610165, 89 } });
1221*c217d954SCole Faust         INode *node_add_16 = _graph.node(id_add_16);
1222*c217d954SCole Faust         node_add_16->set_common_node_parameters(NodeParams{ "add_16", target });
1223*c217d954SCole Faust         _graph.add_connection(id_post_residual_BiasAdd, 0, id_add_16, 0);
1224*c217d954SCole Faust         _graph.add_connection(id_pre_residual_BiasAdd, 0, id_add_16, 1);
1225*c217d954SCole Faust 
1226*c217d954SCole Faust         NodeID id_pre_upscale_BiasAdd = _graph.add_node<ConvolutionLayerNode>(
1227*c217d954SCole Faust                                             PadStrideInfo
1228*c217d954SCole Faust         {
1229*c217d954SCole Faust             1, 1,
1230*c217d954SCole Faust             1, 1,
1231*c217d954SCole Faust             1, 1,
1232*c217d954SCole Faust             DimensionRoundingType::FLOOR },
1233*c217d954SCole Faust         1,
1234*c217d954SCole Faust         arm_compute::graph::ConvolutionMethod::Default,
1235*c217d954SCole Faust         FastMathHint::Disabled,
1236*c217d954SCole Faust         QuantizationInfo(0.005013593938201666, 26));
1237*c217d954SCole Faust         INode *node_pre_upscale_BiasAdd = _graph.node(id_pre_upscale_BiasAdd);
1238*c217d954SCole Faust         node_pre_upscale_BiasAdd->set_common_node_parameters(NodeParams{ "pre_upscale_BiasAdd", target });
1239*c217d954SCole Faust         _graph.add_connection(id_add_16, 0, id_pre_upscale_BiasAdd, 0);
1240*c217d954SCole Faust         _graph.add_connection(id_pre_upscale_FakeQuantWithMinMaxVars, 0, id_pre_upscale_BiasAdd, 1);
1241*c217d954SCole Faust         _graph.add_connection(id_pre_upscale_Conv2D_bias, 0, id_pre_upscale_BiasAdd, 2);
1242*c217d954SCole Faust 
1243*c217d954SCole Faust         NodeID id_upscale_net_FakeQuantWithMinMaxVars_1 = _graph.add_node<DeconvolutionLayerNode>(
1244*c217d954SCole Faust                                                               descriptors::DeconvolutionLayerDescriptor
1245*c217d954SCole Faust         {
1246*c217d954SCole Faust             PadStrideInfo{
1247*c217d954SCole Faust                 2, 2,
1248*c217d954SCole Faust                 0, 0,
1249*c217d954SCole Faust                 0, 0,
1250*c217d954SCole Faust                 DimensionRoundingType::FLOOR },
1251*c217d954SCole Faust             QuantizationInfo{ 0.004990961868315935, 26 } });
1252*c217d954SCole Faust         INode *node_upscale_net_FakeQuantWithMinMaxVars_1 = _graph.node(id_upscale_net_FakeQuantWithMinMaxVars_1);
1253*c217d954SCole Faust         node_upscale_net_FakeQuantWithMinMaxVars_1->set_common_node_parameters(NodeParams{ "upscale_net_FakeQuantWithMinMaxVars_1", target });
1254*c217d954SCole Faust         _graph.add_connection(id_pre_upscale_BiasAdd, 0, id_upscale_net_FakeQuantWithMinMaxVars_1, 0);
1255*c217d954SCole Faust         _graph.add_connection(id_upscale_net_FakeQuantWithMinMaxVars_transposed, 0, id_upscale_net_FakeQuantWithMinMaxVars_1, 1);
1256*c217d954SCole Faust         TensorShape output_shape;
1257*c217d954SCole Faust         output_shape.set(0, 3, false).set(1, 720, false).set(2, 1280, false).set(3, 1, false);
1258*c217d954SCole Faust 
1259*c217d954SCole Faust         NodeID id_output_140211982446376   = _graph.add_node<OutputNode>();
1260*c217d954SCole Faust         INode *node_output_140211982446376 = _graph.node(id_output_140211982446376);
1261*c217d954SCole Faust         node_output_140211982446376->set_common_node_parameters(NodeParams{ "output_140211982446376", target });
1262*c217d954SCole Faust         _graph.add_connection(id_upscale_net_FakeQuantWithMinMaxVars_1, 0, id_output_140211982446376, 0);
1263*c217d954SCole Faust         node_output_140211982446376->input(0)->set_accessor(get_npy_output_accessor(expected_output_filename.value(), output_shape, common_params.data_type,
1264*c217d954SCole Faust                                                                                     common_params.data_layout));
1265*c217d954SCole Faust 
1266*c217d954SCole Faust         return true;
1267*c217d954SCole Faust     }
1268*c217d954SCole Faust 
graph()1269*c217d954SCole Faust     arm_compute::graph::Graph &graph()
1270*c217d954SCole Faust     {
1271*c217d954SCole Faust         return _graph;
1272*c217d954SCole Faust     }
1273*c217d954SCole Faust 
1274*c217d954SCole Faust private:
1275*c217d954SCole Faust     arm_compute::graph::Graph _graph;
1276*c217d954SCole Faust };
1277*c217d954SCole Faust 
1278*c217d954SCole Faust #endif /* ARM_COMPUTE_GRAPH_EDSR_H */
1279