Move PriorBox to PriorBoxIE transformation from CommonOptimization pass (#2185)
* move PriorBox to PriorBoxIE transformation from CommonOptimization pass * call initNodeInfo transformation before PriorToPriorIE * update comments
This commit is contained in:
parent
6b9376e0c6
commit
379158fc11
@ -30,8 +30,10 @@
|
|||||||
#include <transformations/tensor_iterator_transformations/unroll_tensor_iterator.hpp>
|
#include <transformations/tensor_iterator_transformations/unroll_tensor_iterator.hpp>
|
||||||
#include <transformations/common_optimizations/common_optimizations.hpp>
|
#include <transformations/common_optimizations/common_optimizations.hpp>
|
||||||
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
||||||
|
#include <transformations/convert_opset1_to_legacy/convert_prior_to_ie_prior.hpp>
|
||||||
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
||||||
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
||||||
|
#include <transformations/init_node_info.hpp>
|
||||||
#include <transformations/rt_info/fused_names_attribute.hpp>
|
#include <transformations/rt_info/fused_names_attribute.hpp>
|
||||||
#include <legacy/convert_function_to_cnn_network.hpp>
|
#include <legacy/convert_function_to_cnn_network.hpp>
|
||||||
#include <legacy/ie_util_internal.hpp>
|
#include <legacy/ie_util_internal.hpp>
|
||||||
@ -127,6 +129,9 @@ InferenceEngine::ICNNNetwork::Ptr clDNNEngine::CloneAndTransformNetwork(const In
|
|||||||
|
|
||||||
// Note: instead of running all Conversion Transformations you can make up your own transformation pipeline
|
// Note: instead of running all Conversion Transformations you can make up your own transformation pipeline
|
||||||
ngraph::pass::Manager manager;
|
ngraph::pass::Manager manager;
|
||||||
|
manager.register_pass<ngraph::pass::InitNodeInfo>();
|
||||||
|
// WA: ConvertPriorBox must be executed before the 1st ConstantFolding pass
|
||||||
|
manager.register_pass<ngraph::pass::ConvertPriorBox>();
|
||||||
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
||||||
manager.register_pass<ngraph::pass::ConvertOpSet3ToOpSet2>();
|
manager.register_pass<ngraph::pass::ConvertOpSet3ToOpSet2>();
|
||||||
manager.register_pass<ngraph::pass::ConvertOpSet2ToOpSet1>();
|
manager.register_pass<ngraph::pass::ConvertOpSet2ToOpSet1>();
|
||||||
|
@ -18,8 +18,10 @@
|
|||||||
|
|
||||||
#include "generic_ie.hpp"
|
#include "generic_ie.hpp"
|
||||||
#include "cnn_network_ngraph_impl.hpp"
|
#include "cnn_network_ngraph_impl.hpp"
|
||||||
|
#include <transformations/init_node_info.hpp>
|
||||||
#include <transformations/common_optimizations/common_optimizations.hpp>
|
#include <transformations/common_optimizations/common_optimizations.hpp>
|
||||||
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
||||||
|
#include <transformations/convert_opset1_to_legacy/convert_prior_to_ie_prior.hpp>
|
||||||
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
||||||
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
||||||
#include <transformations/tensor_iterator_transformations/apply_transformations_to_ti_body.hpp>
|
#include <transformations/tensor_iterator_transformations/apply_transformations_to_ti_body.hpp>
|
||||||
@ -95,6 +97,9 @@ CNNNetworkImpl::CNNNetworkImpl(const ICNNNetwork & ngraphImpl) {
|
|||||||
::ngraph::op::GenericIE::DisableReshape noReshape(graph);
|
::ngraph::op::GenericIE::DisableReshape noReshape(graph);
|
||||||
|
|
||||||
::ngraph::pass::Manager manager;
|
::ngraph::pass::Manager manager;
|
||||||
|
manager.register_pass<::ngraph::pass::InitNodeInfo>();
|
||||||
|
// WA: ConvertPriorBox must be executed before the 1st ConstantFolding pass
|
||||||
|
manager.register_pass<::ngraph::pass::ConvertPriorBox>();
|
||||||
manager.register_pass<::ngraph::pass::CommonOptimizations>();
|
manager.register_pass<::ngraph::pass::CommonOptimizations>();
|
||||||
manager.register_pass<::ngraph::pass::ConvertOpSet3ToOpSet2>();
|
manager.register_pass<::ngraph::pass::ConvertOpSet3ToOpSet2>();
|
||||||
manager.register_pass<::ngraph::pass::ConvertOpSet2ToOpSet1>();
|
manager.register_pass<::ngraph::pass::ConvertOpSet2ToOpSet1>();
|
||||||
|
@ -24,8 +24,10 @@
|
|||||||
#include <legacy/convert_function_to_cnn_network.hpp>
|
#include <legacy/convert_function_to_cnn_network.hpp>
|
||||||
#include <transformations/common_optimizations/common_optimizations.hpp>
|
#include <transformations/common_optimizations/common_optimizations.hpp>
|
||||||
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
||||||
|
#include <transformations/convert_opset1_to_legacy/convert_prior_to_ie_prior.hpp>
|
||||||
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
||||||
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
||||||
|
#include <transformations/init_node_info.hpp>
|
||||||
#include <transformations/convert_precision.hpp>
|
#include <transformations/convert_precision.hpp>
|
||||||
#include <transformations/rt_info/fused_names_attribute.hpp>
|
#include <transformations/rt_info/fused_names_attribute.hpp>
|
||||||
#include <transformations/tensor_iterator_transformations/apply_transformations_to_ti_body.hpp>
|
#include <transformations/tensor_iterator_transformations/apply_transformations_to_ti_body.hpp>
|
||||||
@ -92,6 +94,9 @@ static void Transformation(ICNNNetwork::Ptr& clonedNetwork) {
|
|||||||
ngraph::op::GenericIE::DisableReshape noReshape(nGraphFunc);
|
ngraph::op::GenericIE::DisableReshape noReshape(nGraphFunc);
|
||||||
|
|
||||||
ngraph::pass::Manager manager;
|
ngraph::pass::Manager manager;
|
||||||
|
manager.register_pass<ngraph::pass::InitNodeInfo>();
|
||||||
|
// WA: ConvertPriorBox must be executed before the 1st ConstantFolding pass
|
||||||
|
manager.register_pass<ngraph::pass::ConvertPriorBox>();
|
||||||
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
||||||
manager.register_pass<ngraph::pass::ConvertOpSet3ToOpSet2>();
|
manager.register_pass<ngraph::pass::ConvertOpSet3ToOpSet2>();
|
||||||
manager.register_pass<ngraph::pass::ConvertOpSet2ToOpSet1>();
|
manager.register_pass<ngraph::pass::ConvertOpSet2ToOpSet1>();
|
||||||
|
@ -7,7 +7,6 @@
|
|||||||
#include "transformations/common_optimizations/algebraic_simplification.hpp"
|
#include "transformations/common_optimizations/algebraic_simplification.hpp"
|
||||||
#include "transformations/common_optimizations/nop_elimination.hpp"
|
#include "transformations/common_optimizations/nop_elimination.hpp"
|
||||||
#include "transformations/common_optimizations/common_optimizations.hpp"
|
#include "transformations/common_optimizations/common_optimizations.hpp"
|
||||||
#include "transformations/convert_opset1_to_legacy/convert_prior_to_ie_prior.hpp"
|
|
||||||
#include "transformations/depth_to_space_fusion.hpp"
|
#include "transformations/depth_to_space_fusion.hpp"
|
||||||
#include "transformations/optimize_strided_slice.hpp"
|
#include "transformations/optimize_strided_slice.hpp"
|
||||||
#include "transformations/convert_scatter_elements_to_scatter.hpp"
|
#include "transformations/convert_scatter_elements_to_scatter.hpp"
|
||||||
@ -35,8 +34,6 @@ bool ngraph::pass::CommonOptimizations::run_on_function(std::shared_ptr<ngraph::
|
|||||||
|
|
||||||
// This pass must be called first in pipeline
|
// This pass must be called first in pipeline
|
||||||
manager.register_pass<ngraph::pass::InitNodeInfo>();
|
manager.register_pass<ngraph::pass::InitNodeInfo>();
|
||||||
manager.register_pass<ngraph::pass::ConvertPriorBox>(); // WA: ConvertPriorBox must be executed before CF
|
|
||||||
manager.register_pass<ngraph::pass::ConstantFolding>();
|
|
||||||
manager.register_pass<ngraph::pass::RemoveFilteringBoxesBySize>(); // Resolves dynamism (replaces NonZero), CF needed
|
manager.register_pass<ngraph::pass::RemoveFilteringBoxesBySize>(); // Resolves dynamism (replaces NonZero), CF needed
|
||||||
manager.register_pass<ngraph::pass::ConvertQuantizeDequantize>();
|
manager.register_pass<ngraph::pass::ConvertQuantizeDequantize>();
|
||||||
manager.register_pass<ngraph::pass::ConstantFolding>();
|
manager.register_pass<ngraph::pass::ConstantFolding>();
|
||||||
|
@ -27,7 +27,9 @@
|
|||||||
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
||||||
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
||||||
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
||||||
|
#include <transformations/convert_opset1_to_legacy/convert_prior_to_ie_prior.hpp>
|
||||||
#include <transformations/common_optimizations/common_optimizations.hpp>
|
#include <transformations/common_optimizations/common_optimizations.hpp>
|
||||||
|
#include <transformations/init_node_info.hpp>
|
||||||
#include <vpu/ngraph/transformations/merge_subsequent_dsr_operations.hpp>
|
#include <vpu/ngraph/transformations/merge_subsequent_dsr_operations.hpp>
|
||||||
#include <vpu/ngraph/transformations/convert_nms_4_to_nms_dynamic.hpp>
|
#include <vpu/ngraph/transformations/convert_nms_4_to_nms_dynamic.hpp>
|
||||||
#include "vpu/ngraph/transformations/dynamic_to_static_shape.hpp"
|
#include "vpu/ngraph/transformations/dynamic_to_static_shape.hpp"
|
||||||
@ -168,6 +170,9 @@ ie::ICNNNetwork::Ptr FrontEnd::convertNetwork(ie::ICNNNetwork& network) {
|
|||||||
ngraph::op::GenericIE::DisableReshape noReshape(nGraphFunc);
|
ngraph::op::GenericIE::DisableReshape noReshape(nGraphFunc);
|
||||||
|
|
||||||
ngraph::pass::Manager manager;
|
ngraph::pass::Manager manager;
|
||||||
|
manager.register_pass<::ngraph::pass::InitNodeInfo>();
|
||||||
|
// WA: ConvertPriorBox must be executed before the 1st ConstantFolding pass
|
||||||
|
manager.register_pass<::ngraph::pass::ConvertPriorBox>();
|
||||||
manager.register_pass<vpu::UpgradeNMS4ToNMSDynamic>();
|
manager.register_pass<vpu::UpgradeNMS4ToNMSDynamic>();
|
||||||
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
||||||
manager.register_pass<vpu::DynamicToStaticShape>();
|
manager.register_pass<vpu::DynamicToStaticShape>();
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
#include <ngraph/pass/manager.hpp>
|
#include <ngraph/pass/manager.hpp>
|
||||||
#include <transformations/common_optimizations/common_optimizations.hpp>
|
#include <transformations/common_optimizations/common_optimizations.hpp>
|
||||||
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
||||||
|
#include <transformations/convert_opset1_to_legacy/convert_prior_to_ie_prior.hpp>
|
||||||
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
||||||
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
||||||
#include <transformations/convert_precision.hpp>
|
#include <transformations/convert_precision.hpp>
|
||||||
@ -167,6 +168,9 @@ TEST(ConvertFunctionToCNNNetworkTests, ConvertTopKWithOneInput) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
ngraph::pass::Manager manager;
|
ngraph::pass::Manager manager;
|
||||||
|
manager.register_pass<ngraph::pass::InitNodeInfo>();
|
||||||
|
// WA: ConvertPriorBox must be executed before the 1st ConstantFolding pass
|
||||||
|
manager.register_pass<ngraph::pass::ConvertPriorBox>();
|
||||||
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
||||||
manager.register_pass<ngraph::pass::ConvertOpSet3ToOpSet2>();
|
manager.register_pass<ngraph::pass::ConvertOpSet3ToOpSet2>();
|
||||||
manager.register_pass<ngraph::pass::ConvertOpSet2ToOpSet1>();
|
manager.register_pass<ngraph::pass::ConvertOpSet2ToOpSet1>();
|
||||||
|
@ -17,8 +17,10 @@
|
|||||||
#include <legacy/convert_function_to_cnn_network.hpp>
|
#include <legacy/convert_function_to_cnn_network.hpp>
|
||||||
#include <transformations/common_optimizations/common_optimizations.hpp>
|
#include <transformations/common_optimizations/common_optimizations.hpp>
|
||||||
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
||||||
|
#include <transformations/convert_opset1_to_legacy/convert_prior_to_ie_prior.hpp>
|
||||||
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
||||||
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
||||||
|
#include <transformations/init_node_info.hpp>
|
||||||
#include <ngraph/opsets/opset1.hpp>
|
#include <ngraph/opsets/opset1.hpp>
|
||||||
#include <ngraph/opsets/opset2.hpp>
|
#include <ngraph/opsets/opset2.hpp>
|
||||||
#include <ngraph/opsets/opset3.hpp>
|
#include <ngraph/opsets/opset3.hpp>
|
||||||
@ -79,6 +81,9 @@ InferenceEngine::CNNNetwork LayerTransformation::transform(InferenceEngine::deta
|
|||||||
|
|
||||||
// Note: instead of running all Conversion Transformations you can make up your own transformation pipeline
|
// Note: instead of running all Conversion Transformations you can make up your own transformation pipeline
|
||||||
ngraph::pass::Manager manager;
|
ngraph::pass::Manager manager;
|
||||||
|
manager.register_pass<ngraph::pass::InitNodeInfo>();
|
||||||
|
// WA: ConvertPriorBox must be executed before the 1st ConstantFolding pass
|
||||||
|
manager.register_pass<ngraph::pass::ConvertPriorBox>();
|
||||||
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
||||||
manager.register_pass<ngraph::pass::ConvertOpSet3ToOpSet2>();
|
manager.register_pass<ngraph::pass::ConvertOpSet3ToOpSet2>();
|
||||||
manager.register_pass<ngraph::pass::ConvertOpSet2ToOpSet1>();
|
manager.register_pass<ngraph::pass::ConvertOpSet2ToOpSet1>();
|
||||||
|
@ -17,8 +17,10 @@
|
|||||||
#include <legacy/convert_function_to_cnn_network.hpp>
|
#include <legacy/convert_function_to_cnn_network.hpp>
|
||||||
#include <transformations/common_optimizations/common_optimizations.hpp>
|
#include <transformations/common_optimizations/common_optimizations.hpp>
|
||||||
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
#include <transformations/convert_opset1_to_legacy/convert_opset1_to_legacy.hpp>
|
||||||
|
#include <transformations/convert_opset1_to_legacy/convert_prior_to_ie_prior.hpp>
|
||||||
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
#include <transformations/convert_opset2_to_opset1/convert_opset2_to_opset1.hpp>
|
||||||
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
#include <transformations/convert_opset3_to_opset2/convert_opset3_to_opset2.hpp>
|
||||||
|
#include <transformations/init_node_info.hpp>
|
||||||
#include <ngraph/opsets/opset1.hpp>
|
#include <ngraph/opsets/opset1.hpp>
|
||||||
#include <ngraph/opsets/opset2.hpp>
|
#include <ngraph/opsets/opset2.hpp>
|
||||||
#include <ngraph/opsets/opset3.hpp>
|
#include <ngraph/opsets/opset3.hpp>
|
||||||
@ -73,6 +75,9 @@ InferenceEngine::CNNNetwork LayerTransformation::transform(InferenceEngine::deta
|
|||||||
|
|
||||||
// Note: instead of running all Conversion Transformations you can make up your own transformation pipeline
|
// Note: instead of running all Conversion Transformations you can make up your own transformation pipeline
|
||||||
ngraph::pass::Manager manager;
|
ngraph::pass::Manager manager;
|
||||||
|
manager.register_pass<ngraph::pass::InitNodeInfo>();
|
||||||
|
// WA: ConvertPriorBox must be executed before the 1st ConstantFolding pass
|
||||||
|
manager.register_pass<ngraph::pass::ConvertPriorBox>();
|
||||||
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
manager.register_pass<ngraph::pass::CommonOptimizations>();
|
||||||
manager.register_pass<ngraph::pass::ConvertOpSet3ToOpSet2>();
|
manager.register_pass<ngraph::pass::ConvertOpSet3ToOpSet2>();
|
||||||
manager.register_pass<ngraph::pass::ConvertOpSet2ToOpSet1>();
|
manager.register_pass<ngraph::pass::ConvertOpSet2ToOpSet1>();
|
||||||
|
Loading…
Reference in New Issue
Block a user