diff --git a/inference-engine/src/vpu/graph_transformer/src/frontend/frontend.cpp b/inference-engine/src/vpu/graph_transformer/src/frontend/frontend.cpp index 0a2af54a7cf..5cf0127f228 100644 --- a/inference-engine/src/vpu/graph_transformer/src/frontend/frontend.cpp +++ b/inference-engine/src/vpu/graph_transformer/src/frontend/frontend.cpp @@ -27,7 +27,6 @@ #include #include #include -#include #include #include @@ -165,7 +164,6 @@ ie::ICNNNetwork::Ptr FrontEnd::convertNetwork(ie::ICNNNetwork& network) { ngraph::pass::Manager manager; - manager.register_pass(); manager.register_pass(); manager.register_pass(); manager.register_pass(); diff --git a/inference-engine/src/vpu/myriad_plugin/myriad_plugin.cpp b/inference-engine/src/vpu/myriad_plugin/myriad_plugin.cpp index 8f64b5bd547..e094bb4f3df 100644 --- a/inference-engine/src/vpu/myriad_plugin/myriad_plugin.cpp +++ b/inference-engine/src/vpu/myriad_plugin/myriad_plugin.cpp @@ -36,6 +36,23 @@ using namespace InferenceEngine::PluginConfigParams; using namespace InferenceEngine::VPUConfigParams; using namespace vpu::MyriadPlugin; +namespace { + +void transformNGraphFunction(const std::shared_ptr& function) { + ngraph::op::GenericIE::DisableReshape noReshape(function); + ngraph::pass::Manager manager; + manager.register_pass(); + manager.register_pass(); + manager.register_pass(); + manager.register_pass(); + manager.run_passes(function); + + ngraph::pass::Manager ti_manager; + ti_manager.register_pass(manager); + ti_manager.run_passes(function); +} + +} // namespace ExecutableNetworkInternal::Ptr Engine::LoadExeNetworkImpl( const ICNNNetwork& network, @@ -47,17 +64,7 @@ ExecutableNetworkInternal::Ptr Engine::LoadExeNetworkImpl( auto clonedNetwork = cloneNetwork(network); if (auto function = clonedNetwork->getFunction()) { - ngraph::op::GenericIE::DisableReshape noReshape(function); - ngraph::pass::Manager manager; - manager.register_pass(); - manager.register_pass(); - manager.register_pass(); - manager.register_pass(); - manager.run_passes(function); - - ngraph::pass::Manager ti_manager; - ti_manager.register_pass(manager); - ti_manager.run_passes(function); + transformNGraphFunction(function); } return std::make_shared(*clonedNetwork, @@ -110,6 +117,9 @@ void Engine::QueryNetwork( } auto clonedNetwork = cloneNetwork(network); + + transformNGraphFunction(clonedNetwork->getFunction()); + auto convertedNetwork = vpu::FrontEnd::convertNetwork(*clonedNetwork); std::unordered_set supported;