Commit Graph

28 Commits

Author SHA1 Message Date
Roman Kazantsev
10b18a00c6 Improve reshapeability of models with eltwise nodes influencing shapes (#2767)
* Fix ElementwiseInputReshape transformation

Reshape node always needs to be inserted
in order to preserve ShapeOf nodes (reshapability of a model) that can potentially be above
elementwise node.

Refactor EltwiseInputReshape_test and EltwiseInputNormalization_test since the logic of maintaining reshape for eltwise has been changed.

Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Merge EltwiseInputNormalization and EltwiseInputReshape transformations

Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Remove Unsqueeze from Fused_op

Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Fix code after code review #1

Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Fix code after review #2

Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Fix code review #4

Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Perform full normalization based on shapes of all inputs to eltwise

Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Refactor much to avoid old API and edges with unsqueeze_dims attribute

Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Fix code after review

Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
2020-11-16 09:50:41 +03:00
Tomasz Dołbniak
20df6eada6 Removal of obsolete constant folding passes (#2902)
* Redundant op::Max CF removal

* Redundant op::Min CF removal

* Redundant op::Sum & op::Product CF removal

* CF Min and Max using evaluate()

* Arithmetic reduction CF pass removal

* Quantize op CF pass removal

* Convert op CF pass removal

* Logical reduction CF pass removal

* Select op CF pass removal

* OneHot CF pass removal

* Code formatting

* ScatterElements CF pass removal

* Gather CF pass removal

* Disable a Quantize op test that fails in CI

* CF pass cleanup

* Convert op cleanup and test adaptation to spec

* Possible fix for failing VPU tests

* Limit the types used in OneHot::evaluate

* Quantize op evaluator removal

* Refactor of Gather evaluator
2020-11-11 15:49:40 +03:00
Mateusz Tabaka
0ee774eb92 Remove obsoleted v0::Sum op (#2938) 2020-11-05 09:13:12 +03:00
Mateusz Tabaka
d7d60b401e Remove obsoleted v0::Slice and v0::Split ops (#2908)
* Remove obsoleted v0::Slice op

* Remove deprecated v0::Split op

* Fix build_graph tests
2020-11-05 09:11:45 +03:00
Mateusz Tabaka
3f5584534a Remove obsoleted v0::Reshape operator (#2878)
* Remove obsoleted v0::Reshape operator

* Fix handling negative dims on 32 bit platforms

Change-Id: Ia18e20df9a79fd0b7b38c434bee7140599833952

* apply code format

Change-Id: I4ddfb9e7033cbc97e167922f6ee5873d5487e551
2020-11-03 07:01:34 +03:00
Mateusz Tabaka
d3c2d90d7f Remove obsoleted v0::Or operator (#2857)
* Remove obsoleted v0::Or operator

* apply style format
2020-11-02 06:49:03 +03:00
Mateusz Tabaka
3f35746c45 Remove deprecated v0::Reverse op (#2899)
* Remove deprecated v0::Reverse op

* fix unit tests

* add include for std::inserter
2020-11-02 06:46:30 +03:00
Mateusz Tabaka
d6a9ef3a8f Remove obsoleted v0::Not operator (#2846)
* Remove obsoleted v0::Not operator

* restore tests from ngraph/test/backend
2020-10-30 07:33:26 +03:00
Mateusz Tabaka
1144eefe4d Remove obsoleted Min, Max operators (#2832) 2020-10-29 11:32:50 +03:00
Mateusz Tabaka
186e00fa2a Remove obsoleted v0::Product op (#2860) 2020-10-28 07:12:52 +03:00
Mateusz Tabaka
73c40722fd Remove obsoleted v0::Gather and v0::GatherND (#2826) 2020-10-27 10:07:48 +03:00
Mateusz Tabaka
4d2674962d Remove obsoleted v0::Broadcast and BroadcastLike operators (#2779)
* Remove obsoleted v0::Broadcast and BroadcastLike operators

* remove NGRAPH_DEPRECATED marks from autobroadcast functions

* restore NGRAPH_SUPPRESS_DEPRECATED_START in autobroadcast.cpp
2020-10-26 06:32:49 +03:00
Mateusz Tabaka
32b886a892 Remove obsoleted Dequantize op (#2780)
* Remove obsoleted Dequantize op

* apply code style
2020-10-23 11:25:08 +03:00
Mateusz Tabaka
83670dd5cb Remove deprecated Any op from nGraph (#2719) 2020-10-20 12:36:46 +03:00
Gleb Kazantaev
3f55733b43 Updated ConstantFolding pass to propagate friendly name (#2572)
* Fixed concat output name when decomposing shape_of in CF

* Added friendly_name propagation for CF pass

* Propagate runtime info inside ConstantFolding pass

* Fixed rt info merge strategy to avoid cases when merge is not implemented but attributes number is equal to 1
2020-10-08 09:16:28 +03:00
Ilya Churaev
d25bb6314a Deprecate nGraph v0 ops and builders (#1856)
* Deprecate nGraph v0 ops

* Fixed build

* Added deprecated defines to fix windows
2020-08-20 12:27:14 +03:00
Mateusz Bencer
a63c8d9537 Optimize Concat operation (#1812)
* 1d case optimization

* code refactor

* concat optimization

* removed using template for concat

* unit tests to concat constant folding

* synchro with current master
2020-08-18 18:28:57 +03:00
Tomasz Dołbniak
1cb1f13eaa v1::Pad evaluator (#1771)
* v1::Pad reference implementation

* ut fix: pad_negative_exterior_1d

* ut fix: pad_negative_exterior_1d_check_limits & pad_edge_1d

* Code formatting

* ut fix: pad_edge_1d_top_neg & pad_edge_1d_top_neg_bigger_than_tensor

* More Pad UT fixes

* Pad UT fixes: REFLECT mode

* Fix all Pad UTs

* Switch Pad evaluation in INT backend

* Non-template solution to v1::Pad::evaluate

* Always create v1::Pad with 4 inputs

* VS compilation error fix

* Python test fix

* Remove the v0::Pad constant folding pass

* Some extra checks in v1::Pad evaluator

* Code formatting

* Remove an obsolete CF test
2020-08-18 13:43:54 +03:00
Gleb Kazantaev
aa35c59c5f FGTT for CF (#1792)
* Added FGTT for ConstantFolding

* Added test for CF disabling
2020-08-17 15:39:58 +03:00
Ilya Churaev
e4b411f027 Removed constant folding for Tile op (#1595) 2020-08-04 07:42:23 +03:00
Ilya Churaev
d791d295aa Use clone_function instead of specialize_function (#1523)
* Try to use clone_function instead of specialize_function

* Try to fix stress tests

* Remove redundant specialize_function

* Fixed TI clone

* Removed redundant code

* Uncomment threading tests

* Fixed docs

* copy function friendly name too

* Fixed copy rt_info

* Fixed comments
2020-08-03 18:23:02 +03:00
Gleb Kazantaev
bd42f09e98 nGraph Transformations refactoring (#931)
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.
2020-07-27 19:47:37 +03:00
Ilya Churaev
29816f7a44 Remove get_arguments (#1323)
* Removed get_arguments

* Fixed code style
2020-07-17 09:50:06 +03:00
Ilya Churaev
71d41a992f Removed all and allreduce layers (#1182)
* Removed all and allreduce layers

* Removed reference implementations
2020-07-08 04:16:02 +03:00
Ilya Churaev
59579eb437 Removed And operation (#1183) 2020-07-07 13:32:35 +03:00
Ilya Churaev
5d1c5ee6a9 Removed nGraph experimental operations and headers (#1197) 2020-07-07 07:27:17 +03:00
Ilya Churaev
934e0c61eb Removed reference implementations for some data types (#1086) 2020-06-24 12:44:19 +03:00
Alexey Suhov
f30dcc218c publish master branch snapshot, revision 9df5eb1f84e13a35720a918f88324561222ab114 2020-05-20 01:13:06 +03:00