@@ -168,6 +168,9 @@ void OrganizeProgram(Node *merged_node,
168168 subgraph.size ());
169169
170170 std::unordered_set<Node *> io_var_nodes = GetRelatedIOVarNodes (subgraph);
171+ for (const auto * node: io_var_nodes) {
172+ LOG (INFO) << " IO Variable Name: " << node->Name ();
173+ }
171174
172175 std::vector<framework::OpDesc*> subgraph_ops;
173176 for (auto *op_node : subgraph) {
@@ -178,6 +181,9 @@ void OrganizeProgram(Node *merged_node,
178181 ModifyEngineProgram (merged_node, host_program, engine_program, host_sub_block,
179182 io_var_nodes, subgraph_ops);
180183 *repetitive_params = ExtractParameters (io_var_nodes);
184+ for (const auto & param: *repetitive_params) {
185+ LOG (INFO) << " Repetitive param: " << param;
186+ }
181187
182188 host_program->Flush ();
183189 engine_program->Flush ();
@@ -199,6 +205,7 @@ void LiteSubgraphPass::SetUpEngine(framework::ProgramDesc* program,
199205 std::ostringstream os;
200206 platform::CPUDeviceContext ctx;
201207 for (const auto & param: params) {
208+ LOG (INFO) << " Serialize param: " << param;
202209 PADDLE_ENFORCE_NOT_NULL (scope->FindVar (param), " Block should already have a '%s' variable" ,
203210 param);
204211 auto * tensor = scope->FindVar (param)->GetMutable <framework::LoDTensor>();
@@ -262,6 +269,8 @@ void LiteSubgraphPass::ApplyImpl(
262269 auto teller = [&lite_ops_filter](const Node *node) {
263270 if (!node->IsOp () || !node->Op ())
264271 return false ;
272+ else if (node->Op ()->Type () == " feed" || node->Op ()->Type () == " fetch" )
273+ return false ;
265274 else if (std::find (lite_ops_filter.begin (), lite_ops_filter.end (),
266275 node->Op ()->Type ()) != lite_ops_filter.end ())
267276 return false ;
0 commit comments