* Avoid duplicated outputs with the same name
* Revert onnx graph changes
* Allow output duplicates in ie_plugin_internal check
* Add test with onnx model
* Check get_tensor_ptr instead of any_name
* More outputs test
* Refactor to use std::transform
* test manifest update
* Remove redundant header
* INTERPRETER segfaults fix for duplicated output names
* Simplify duplication assert
* Update test names
* Test update
* Renamed ov::Function to ov::Model
* Fixed all for macos
* Fixed build
* Fixed build
* Revert changes in GPU plugin
* Fixed ngraphFunctions
* Fixed all for mac
* Fixed new test
* Fixed if for Windows
* Fixed unit tests and renamed Function in python API
* Fixed code style
* Fixed import
* Fixed conflict
* Fixed merge issues
* Enabled support of IR v11 in IR frontend
* Enabled serialization to v11
* Added indexes for Inputs/Outputs
* Fixed typo
* Fixed code style
* Fixed deserialization tests
* FIxed typo
* Avoid changes in the original serialized function
* Fixed TI tests
* Removed version from the function and indexes from parameters/results
* Restore function version
* Clone function rt info
* Removed v11 version
* Fixed preprocessing for template plugin
* Added more tests instances
* Split common transformation to smaller ones which can be used by plugins
* Moved preprocessing transformation to Plugin API
* Added PreprocessConversionTest tests
* Disabled tests on GPU: CVS-51764
* Disabled some tests on VPU and TEMPLATE
* Support for input layout conversions in TEMPLATE plugin
* Improvements in Template Plugin
* Fixed compilation
* Fixes
* Disables some tests
* Fixed compilation on Windows
* Fixed docs
* Removed suppressions for IInferRequest deprecation
* Fixed Windows
* More fixes for Windows
* Fixed compilation on Windows
* Fixed comment in documentatipn
* Fixes for Andorid
* Fixes for old gcc 4.8
* WA for cross-compilations
* Fixed compilation
* Fixed HETERO plugin compilation for old compilers
* Flags
Co-authored-by: lab_ddpqa <lab_ddpqa@intel.com>
This PR introduces next changes:
1. Transformations *_tbl.hpp files were replaced with direct registration in cpp files.
2. Plugins use pass::Manager to call conversion passes.
3. Transformations callback was moved to PassBase class as there is no more need to keep it in separate class
4. All pattern based transformations must be inherited from MatcherPass class. GraphRewrite class will be used only for matchers registration and execution on function.
MatcherPass class adds new features to pattern-based transformations approach:
* Allows to run matcher pass on a single node.
* Operations that were created inside transformation callback can be added to execution list to be available for pattern matching within single GraphRewrite.
5. GraphRewrite MatchClosure was replaced with MatcherPass. So all matchers will be registered as a MatcherPass.
6. Added pass::Manager::clear_state() method to avoid dependency with nodes that no longer belongs to function after replacement.
7. Some representative transformations were updated to use MatcherPass as an example.
8. Mul->Add sequence fusion transformation was replaced with LinOpSequenceFusion.
9. Pattern and callback registration code was moved to class c-tors (will be finished for remaining passes in other PR) .
10. Updated pass::Manager to get pass names only when NGRAPH_PROFILE_PASS_ENABLE enabled.
11. Moving towards removing PassProperty.
12. Added ngraph::pattern::wrap_type<T>(inputs, pred) to simplify pattern creation.
13. GraphRewrite was updated to execute MatcherPass more efficient.
* Network serializer for v7 is removed
* Fixed compilation
* Fixed Windows build
* WA for GPU
* Create function 2 times
* Fixed compilation
* Added return