Commit Graph

57 Commits

Author SHA1 Message Date
Jozef Daniecki
8e9b733534 HostTensor2Vector (#2027)
* Add host_tesnor_2_vector() implementation and unit tests. One reference OP refactored to use it.

* Ngraph assertion message refactored.

Co-authored-by: Tomasz Dołbniak <tomasz.dolbniak@intel.com>

* Fix style.

Co-authored-by: Tomasz Dołbniak <tomasz.dolbniak@intel.com>
2020-09-04 16:02:14 +03:00
Ivan Tikhonov
2f5a28d44f LSTMCell/Sequence v1, reference implementations and decompose transformations for LSTM/GRU/RNN Cells (#2000)
* validate_and_infer_types() implementation

* input parameter validation for LSTM, GRU and RNN

* style-check applied

* Add LSTMSequence dynamic shape validation and test props for RNNCell, GRUCell, LSTMCell and LSTMSequence.

* recurrent_sequence.hpp moved to ngraph/core/include/ngraph/op/util/

* style check applied

* removed unused variable from LSTMSequence::validate_and_infer_types

* Add missing newline mark at the end of file.

* Add supression macro for FusedOp deprecation.

* Add element type initialization

* transpose,rnn cell reference implementations

* Apply PR review remarks

* reference implementations for cells op, single layer tests, align lstm cell/sequence according to the spec

* lstm/gru/rnn cell decompostion transformations

* ngraph codestyle

* clean up

* ngraph code style

* change inheritance of Cells, fix build

* fix build

* fix build again

* remove Peepholes from LSTMSeq, fix copy_runtime_info in transformations

* Rewrite tests to use gtest exception assertions.

* resolve tests issues

* ngraph codestyle

* add missed files

* fix typeprop tests

* fix lstm sequence checks

* fix arm build

* fix arm again

* delete unnecessary file

* add convert weghts format function, enable lstm test, resolve review comments

* add ngraph builders

* ngraph codestyle

* fix unit tests

* revert transpose reference implementation

* revert LSTM Cell v0, add LSTMCell v1, update transformation lstm_cell_to_cell_ie

* v1 version of LSTMCell op

* LSTMSequence v1 operation, exclude LSTMSeq from opset4

* fix python api tests

* resolve review comments, tests for decomposition transformations, switch lstm cell to opset4 in mo

Co-authored-by: Szymon Durawa <szymon.durawa@intel.com>
2020-09-04 09:04:36 +03:00
Ilya Churaev
28eed7708e Removed builders from public API (#2059)
* Removed builders from public API

* Fixed build
2020-09-04 06:06:43 +03:00
Evgeny Lazarev
f60b46f3d4 Fixed visitor for Interpolate-1 and Interpolate-4 (#2051)
* Fixed visitor for Interpolate-1 and Interpolate-4

* Code style fix

* Remove unnecessary changes

* Fixed compilation on Linux for Atttribute visitor of vector<size_t>

* Added unit test for IE IR Reader for Interpolate-4

* Updated unit test for IR Reader for Interpolate-4

* Updated unit test
2020-09-03 16:00:46 +03:00
Ilya Churaev
6f83889886 Fixed a case with empty order in transpose op (#2043)
* Fixed a case with empty order in transpose op

* Fixed comments

* Fixed transpose tests

* Fixed tests
2020-09-03 14:50:01 +03:00
Ilya Churaev
02c8a3c358 Removed attrs prefix for some layers (#2037)
* Removed attrs prefix for some layers

* Fixed tests
2020-09-03 07:58:07 +03:00
Gleb Kazantaev
34b595d218 Fixed replace_output_update_name method to preserve rt info (#1983)
* Fixed replace_output_update_name method to preserve rt info

* added test
2020-09-01 17:02:46 +03:00
Nikolay Shchegolev
43ec4a5695 [CPU] CTCLoss operation implementation. (#1482) 2020-09-01 12:52:31 +03:00
Szymon Durawa
b58e982e6a Dynamic shape cell (#1683)
* validate_and_infer_types() implementation

* input parameter validation for LSTM, GRU and RNN

* style-check applied

* Add LSTMSequence dynamic shape validation and test props for RNNCell, GRUCell, LSTMCell and LSTMSequence.

* recurrent_sequence.hpp moved to ngraph/core/include/ngraph/op/util/

* style check applied

* removed unused variable from LSTMSequence::validate_and_infer_types

* Add missing newline mark at the end of file.

* Add supression macro for FusedOp deprecation.

* Add element type initialization

* Apply PR review remarks

* Rewrite tests to use gtest exception assertions.
2020-09-01 12:01:20 +03:00
Vladimir Gavrilov
7a74792ac4 Intepolate-4 nGraph operation (#1412)
* Fixed prototype of evaluate method.

* Rewritten Interpolate-4 ctors (added argument output_shape). Corrected tests.

* Fixed typo.

* Fixed number of args of make_shared in op::v4::Interpolate::clone_with_new_inputs.

* Fixes in Interpolate-4 tests.

* Now ONNX Upsample-1 is readed as Interpolate-4 with 4 inputs.

* Code style fixes.

* Some fixes in Interpolate-4 layer test.

* Now ONNX Upsample-9 is readed as Interpolate-4 with 4 inputs.

* Small fixes.

* Some changes.

* Fixed processing of 'scales' input in evaluation of Interpolate-4: now 'scales' contains scales only from 'axes'.

* Fixes in documentation.

* Now reference implementation of Interpolate-4 is rewritten for using 3 required inputs.

* Some code style fixes.

* Small fix.

* Started to write tests for method evaluate() of Interpolate-4.

* Continued to write tests for evaluate() of Interpolate-4.

* Some fixes.

* Some additions.

* Written draft of tests for 'cubic' mode with using scales.

* Some changes.

* Started to write tests for 'nearest' mode.

* Started to write tests for 'linear_onnx' mode.

* Some changes.

* Small fixes.

* Added setup of output type.

* Small addition.

* Added debug print into Interpolate-4 evaluate.

* Now in Interpolate-4 evaluation tests 3 inputs of Interpolate are Constants.

* Small changes.

* Added some debug print.

* Added more debug print.

* Some fixes.

* Now 4th argument of runtime::interpolate has type std::vector<int64_t>.

* Added checks for result of calculations.

* Added another expected values vector for the mode 'cubic'.

* Temporarily commented result value checks  for the cubic mode.

* Written tests for 'nearest' mode.

* Some reorganization.

* Written tests for 'linear_onnx' mode.

* Fixed padding loop.

* Fixed docs for 'linear_onnx' mode.

* Written tests for 'cubic' mode.

* Deleted debug print.

* Fixed code style.

* Enabled CPU layer tests for Interpolate-4.

* Reverted changes of this file.

* Now ONNX importer reads Resize-1 as Interpolate-4 with 4 inputs.

* Now ONNX importer reads Resize-11 as Interpolate-4 with 4 inputs.

* Small fixes.

* Fixed docs.

* Added small epsilon in the shape calculation in the function op::v4::Interpolate::infer_using_scales.

* Small fix.

* Reduced size of the template function eval().

* Now the 'nearest' mode is rewritten to CoordinateTransfom instead of NDim* classes

* Now the 'cubic' mode is rewritten to use CoordinateTransformation instead of NDim classes.

* Started to rewrite 'linear' mode using CoordinateTransform.

* Started to write helper class.

* Small fix.

* Small changes.

* Some fix.

* Fixed typo.

* Now the preamble of 'linear_onnx' mode implementation is a method of helper class.

* Now the function clip_coord is the method of helper class, and the mode 'linear' uses CoordinateTransform instead of NDim classes.

* Deleted NDim classes.

* Some fixes.

* Some refactoring.

* Some refactoring: now inner calculation of 'linear' is in helper class.

* Moved reference implementation of Interpolate-4 into library with reference implementations.

* Small fix.

* Deleted commented tests.

* Code stile fixes.

* Deleted redundant type prop tests for Interpolate-4.

* Documentation fixes.

* Disabled IE_CPU tests for ONNX Resize: Interpolate-4 is not implemented in plugins.

* Temporarily disabled some ONNX tests.

* Some refactoring: deleted redundant attributes of InterpolateEval class.

* Small fix.

* Added NGRAPH_RTTI_DECLARATION and NGRAPH_RTTI_DEFINITION.

* Added debug print to 'cubic' mode calculation.

* Some deletions.

* Small fix.

* Fixed typos.

* Added another debug print.

* Now indices_shape is constructed from std::vector<std::size_t>(num_of_axes, 4) again.

* Fixed CMakeLists.txt.

* Small fix.

* Added more debug print.

* Fixed typo.

* Fixed calculation of the first argument of helper.clip_coord in the inner loop of cubic_func.

* Some code style fixes.

* Alphabetically sorted operations of opset4.

* Deleted constant cannot_define_axes.

* Used std::iota instead of loop.

* Renamed structure InfoToCallReference.

* Now void op::v4::Interpolate::validate_and_infer_types() checks an element type of an input tensor.

* Code style fix.

* Changes in reading of ONNX Resize and Upsample: we generate Interpolate-4 without 'axes' input.

* Now bodies of functions evaluate_interpolate_v4() and inline bool evaluate() are moved in the method bool op::v4::Interpolate::evaluate.

* Fixes in example of the documentation of Interpolate-4.

* Fixed typos.

* Small fix.

* Some fixes.

* Deleted some type aliases.

* Uncommented a test for 'cubic' mode.

* Small code style fix in bool op::v4::Interpolate::evaluate.

* Uncommented more test for Interpolate-4 reference implementation.

* Added more debug print.

* Some changes.

* Uncommented all tests for Interpolate-4 evaluate().

* Deleted debug print.

* Deleted 'simple' mode from the map nearest_mode_map.

* Code style fixes.

* Disabled some CPU tests.

* Some fixes.

* Small fixes.

* Some fixes.

* Fixed typo.

* Fixed typo.

* Small change.

* Fixed some typos.

* Fixed some typos.

* Fix in operator() of the class GetOriginalCoordinate.

* Disabled some CPU tests.

* Small changes.

* Deleted template function from resize.cpp.

* Code style fixes.

* Refactored the method op::v4::Interpolate::evaluate.

* Added documentation for infer_using_scales() and infer_using_shapes().

* Added documentation for classes GetNearestPixel and GetOriginalCoordinate.

* Small fixes.

* Some code style fixes.

* Small fixes.

* Some changes.

* Added NGRAPH_SUPPRESS_DEPRECATED_START and NGRAPH_SUPPRESS_DEPRECATED_END for using v0::InterpolateAttrs; and using v0::Interpolate;

* Code style fix.

* Enabled ONNX import only tests for Resize-10, Upsample-8, Upsample-9.

* Fixed element type for scales_const. Fixed targetShapes and pads in single layer tests.

* Small changes.

* Added conversion from NGRAPH to CNNLayer.

* Added documentation for the class InterpolateEval.

* Now 'nearest' mode has special tests in cpu single layer tests.

* Small changes.

* Fixes in cpu single layer tests.

* Temporarily commented Interpolate-4 in ConvertFunctionToCNNNetworkTests.

* Added some docs.

* Enabled some tests for Resize-11.

* Added test.

* Corrected expected values in the resize_downsample_scales_align_corners case.

* Added more test for the 'cubic' mode.

* Added more test for linear_onnx mode.

* Deleted debug print for linear_onnx mode.

* Deleted debug prints. Added yet another test for 'nearest' mode.

* Fixes for import of ONNX Resize-10 and Upsamples.

* Applyed Evgeny Lazarev fix for Interpolate-4 infer function.

* Code style fixes.

* Some tests were deleted from unit_test.manifest file for INTERPRETER.

* Deleted test for downscale Resize-10: results of infer are correct, but comparison is not.

* Enabled test INTERPRETER.onnx_empty_initializers_handling.

* Some fixes.

* Added the method run_with_tolerance_as_fp() to the class TestCase and the method compare_results_with_tolerance_as_fp() to the class TestCaseEngine.

* Small fix.

* Small fix.

* Added yet another type_prop test.

* Disabled CPU test IE_CPU.onnx_empty_initializers_handling.

* Code style fixes.

* Enabled some ONNX tests.

* Some changes.

* Code style fix.

* Enabled test INTERPRETER.onnx_model_round.

* Disabled tests with behavior as behavior of INTERPRETER.onnx_resize11_scales_down_linear.

* Changed tolerance for test onnx_empty_initializers_handling.

* Changed tolerance in the test onnx_resize11_sizes_linear (otherwise this test is failed in MacOS). Disabled test INTERPRETER.onnx_resize11_sizes_nearest_asymmetric_floor, because this test failed in MacOS only.
2020-09-01 06:57:34 +03:00
Ilya Churaev
ebc7c3fe82 Print friendly name instead of name to stream (#1985) 2020-09-01 06:04:54 +03:00
Gabriele Galiero Casay
deeb0577f2 Dynamic shape support for builder collapse (#1971) 2020-08-31 18:26:36 +02:00
Evgeny Lazarev
210398674d Multiple fixes related to tickets 37105 and 37615 (#1979)
* Multiple fixes.

1. Fixes SpaceToBatch transformation to not crash if inputs are not Constant
2. Fixed eliminate_squueze, eliminate_unsqueeze to not crash when input has dynamic rank
3. Added reference implementation for the FloorMod operation

* Code style fixes

* Update floor_mod.hpp

Removed unnecessary function
2020-08-31 10:41:18 +03:00
Yegor Kruglov
b162f9d5ac [ MO ][ RESHAPE ] Fixes in RNNSequenceNormalize transformation (#1909)
* initial commit

* first reshap-able variant

* right version for reshape

* comment update

* fixes for failed e2e

* set data type to ngraph TensorIterator

* Fix dynamic shapes for cells ops

* clean up

Co-authored-by: yegor.kruglov <ykruglov@nnlvdp-mkaglins.inn.intel.com>
2020-08-30 01:19:22 +03:00
Bartosz Lesniewski
d3682417bb Add support for ReduceL1 and ReduceL2 to ONNX Importer (#1838) 2020-08-27 15:47:04 +02:00
Ilya Churaev
e60331a232 Use relative paths in error messages (#1963) 2020-08-27 14:04:02 +03:00
Mateusz Tabaka
a6076a1fd6 Introduce Quantize-Dequantize to FakeQuantize transformation (#1849)
* Introduce Quantize-Dequantize to FakeQuantize transformation

* Revert changes in DequantizeLinear

* apply code format

* Changes after review:

- description for transformation
- remove NGRAPH_CHECK and move some checks from callback to predicates in pattern
- check if out_low/high are broadcastable for FQ's first input
- fix params to copy_runtime_info

* Add type_matches and type_matches_any predicates

* Use get_single_value

* Changes after review:

- add brief description of transformation
- use get_pattern_value_map instead of get_pattern_map
- change opset1 to opset4
- fix params to copy_runtime_info

* Check result of dynamic_pointer_cast
2020-08-26 11:51:51 +03:00
Anton Chetverikov
84c7b048db SoftPlus operation implementation (#1365) 2020-08-25 19:36:39 +03:00
Adam Osewski
393e9295cd Reference implementation for ScatterUpdate (#1678)
* Reference implementation for ScatterUpdate and use of it in evaluate.

* Review comments. Clarify comments.

* Update file directory.

* Replace scatter_update reference implementation in ngraph/core/reference/

* Remove template code from ScatterUpdate reference implementation

* Apply review requests

Co-authored-by: mitruska <katarzyna.mitrus@intel.com>
2020-08-25 06:12:39 +03:00
Tomasz Dołbniak
4013649fe8 v0::Pad operator removal (#1912)
* v0::Pad operator removal

* Obsolete test removal
2020-08-24 19:03:01 +03:00
Ivan Tikhonov
cb72684388 Partial revert a commit with reference implementations of PriorBox(Clustered) ops (#1878)
* partial revert a commit with reference implementations of PriorBox(Clustered), disable references for this ops

* ngraph codestyle

* disable const folding unit tests for PriorBox(Clustered)

* fix arm build

* fix unit test

* Revert "fix unit test"

This reverts commit 1fe59e55d6.
2020-08-24 14:31:32 +03:00
Ivan Tikhonov
c74643f6b6 Fix Assign, Matmul ops for correct work with keep_shape_ops feature for Kaldi models (#1885)
* fix assign and matmul ops

* fix unit test

* static shapes by default for kaldi
2020-08-24 14:11:01 +03:00
Tomasz Dołbniak
d4567d5ab5 Linux clang compilation error fix (#1891) 2020-08-21 17:22:54 +03:00
Ewa Tusień
54b9b7ae6c Remove Structural Attributes from Proposal op. (#1853) 2020-08-20 12:31:43 +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
Evgenya Stepyreva
802d605bff [ MO ] KSO ON by default (#1730)
* [ MO ] KSO ON by default.
Introduce static_shape MO key, remove keep_shape_ops key usages

* keep_shape_ops -> static_shape

* static_shape = False by default

* Fix Proposal-4 shape infer

* style-apply

* Fix Layout Change for ShapeOf paths
2020-08-20 12:06:45 +03:00
Gleb Kazantaev
301d6b50e3 Moved AlgebraicSimplification and NopElimination passes to IE (#1859)
* Moved AlgebraicSimplification and NopElimination passes to IE

* Fixed headerfiles
2020-08-19 18:55:11 +03:00
Ilya Churaev
6ab61c1f7b Fixed path for pad reference impl (#1846) 2020-08-19 09:41:59 +03:00
Katarzyna Mitrus
ceb8a25c94 Enable HSwish - ngraph op, fusion/decomposition and reference implementation (#1770)
* Add HSwish operator to nGraph

* Add HSwishFusion transformation

* Update check_constant function

* Add reference implementation for HSwish

* Enable reference implemenation in HSwish evaluate

* Add op_eval test

* HSwish fusion transformation test

* Add HSwishFusionWithoutRelu transformation

* Add more hswish fusion tests

* Register HSwishFusion pass in common_optimizations

* Update HSwish reference implementation

* Add HSwishFusion with Relu and Multiply

* Add HSwishDecomposition transformation pass

* Add HSwishDecomposition test

* Add HSwish op to ngraph python API

* Update HSwish fusion transformations

* Remove HSwishFusion from common optimizations

* Update hswish python API

* Add bf16 to evaluate hswish

* Update hswish python API

* Move hswish reference implementation

* UnaryElementwiseArithmetic inheritance

* Enable HSwish callback for clDNN

* Register HSwishDecomposition pass in ConvertOpSet1ToLegacy

* Enable HSwishFusion pass in common optimizations

* Use NGRAPH_RTTI_DECLARATION

* Moved python hswish test to the test_ops_unary
2020-08-19 08:04:00 +03:00
Maxim Vafin
6b04eca3c2 Add Range-4 support (#1552)
* Add Range-4 support

* Add type infer and IR Reader extender

* Implement ngraph Range-4

* Implement evaluate for Range-4

* Remove not needed types

* Resolve review feedback

* Add RTTI defines
2020-08-19 07:58:41 +03:00
Ivan Tikhonov
c5ca8f5b51 Remove ngraph::Lambda class, replace TensorIterator body with ngraph::Function (#1830)
* remove Lambda class, replace TensorIterator body with ngraph::Function

* Fix passing parameters from parent graph to subgraph

Co-authored-by: mbencer <mateusz.bencer@intel.com>
2020-08-19 07:09:32 +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
Ilya Lavrenov
579cec716e Ngraph: hide itt.hpp to src (#1834)
* Use proper include for log.hpp

* Hide itt.hpp to src folder

* Removed CodeWriter
2020-08-18 16:50:37 +03:00
Ilya Churaev
04475bc1b2 Add arithmetic operators for bfloat16 (#1831) 2020-08-18 13:49:30 +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
af6f99525a ConvertPrecision for element::boolean (#1772)
* Added bool to u8 conversion

* Added opset1::ShapeOf handler

* Added ReduceLogicalAnd/Or support in ConvertPrecision pass

* Moved static map inside function; Updated callbacks

* Removed header

* Fixed tyle relaxed for cases when the same output consumes by multiple inputs in the same operation; added tests; fixed input types setting for already created type relaxed operations
2020-08-18 11:10:24 +03:00
Ilya Lavrenov
57ab1e74a4 Removed NGRAPH_API from reference library (#1821) 2020-08-17 22:46:12 +03:00
Ilya Churaev
f17262e05f Add static library with nGraph reference implementations (#1810)
* Removed reference implementations from public API

* Remove coordinate_transform from public API

* Introduced static library with reference implementations
2020-08-17 19:43:11 +03:00
Evgeny Lazarev
125a462400 Enable ReduceL1 and ReduceL2 operations (#1799)
* Initial version of ReduceL1, ReduceL2 and ReduceLp enabling in the MO

* Added operations ReduceL1 and ReduceL2 to nGraph

* Removed ReduceLp. Added ReduceL1 and ReduceL2

* Separated specification of ReduceLp into ReduceL1 and ReduceL2

* Updated ReduceL1 and ReduceL2 specification

* Fixed ReduceL1 and ReduceL2 type prop tests

* Implemented nGraph transformation to decompose ReduceL1 and ReduceL2. Disabled them for CPU and GPU plugins

* Updated supported framework layers

* Added unit tests for ReduceL1 and ReduceL2 reference implementation

* Fixed ReduceXXX operations reference implementation by adding support for a new parameter 'keep_dims'

* Fixed constant folding for v0::Any

* Added ReduceL1 and ReduceL2 to Python API

* Implemented ReduceL1 and ReduceL2 decomposition tests and fixed ReduceL2 decomposition

* Added specific creator for ReduceXXX operations instead of NodeBuilders

* Fixed conversion ReduceXXX to CNNLayer

* Fixed parser for ReduceLogicalXXX operations
2020-08-17 16:32:53 +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
6c98590bcd Removed template headers for Fused Ops (#1780) 2020-08-17 13:37:00 +03:00
Mateusz Bencer
73fc659f6d Add reference implementation to VariadicSplit (#1698)
* implementation of variadic split ref impl

* Added tests

* added unit tests

* refactor

* review remarks

* fixed ie tests
2020-08-17 11:13:06 +03:00
Ilya Churaev
4270153ad2 Remove nGraph layout (#1763) 2020-08-17 06:05:08 +03:00
Pavel Esir
4302e2c120 add preliminary support of Proposal-4 in nGraph (#1448)
renamed logits -> bbox_deltas

updated ngraph unittests for Proposal

removed validate_and_infer_types Proposal-4

removed validate_and_infer_types Proposal-4

changed validate_and_infer_types in parent class of Proposal

removed get_output_size

successfully inferred Proposal on SSH and Faster-RCNN

added unittests for Proposal-4

added unittests for Proposal-4

added unittests for Proposal-4

returned back default namespace for Proposal

reduced number of outputs in v0::Proposal

correct conversion of Proposal-4 -> propodal_ie with 2 outputs

removed creator for proposal v0

removed converter for proposal v0

added Proposal-4 to MO

removed `for_deformable` attribute

added Proposal-4 to MO and nGraph Python API

removed typo in Proposal-4 specification

style corrections

style corrections and removed some redundant code

rename proposal Python api test

removed 'attrs' context from visitor

returned back AttrVisitor to check if passes OpenVINO ONNX pipeline

Should pass OpenVINO ONNX pipeline (returned back AttrVisitor just to check)

python api for Proposal-4 works ok

(style correction) python api for Proposal-4 works ok

parametrized proposal_ie some other corrections

removed 'attrs.' context from nGraph Python API tests for Proposal

minor corrections in replacer proposal->proposal_ie

corrected Python API OpenVINO-ONNX tests should pass

Improved workaround for AttributeVisitor for Proposal

Add additional check of im_info tensor shape to Proposal node in MKLDNNPlugin

😠 removed 4 extra spaces from test_dyn_attributes.py to match The Style

added new nGraph RTTI declarations, removed throwing exception in transformation

added new nGraph RTTI declarations, removed throwing exception in transformation, corrected exception in MKLDNNplugin

corrected im_info size checking in Proposal node of MKLDNNPlugin
2020-08-16 15:49:49 +03:00
Gleb Kazantaev
983e2a922f opset4 Convolution/GroupConvolution -> Multiply fusion (#1754)
* Added new predicates for smart pattern matching

* Added ConvMul and GroupConvMul fusion passes based on opset4; Added CPU functional tests for comparing fusion accuracy

* Improved ConvMultiply fusion to support scalars; Added positive and negative tests

* Added ConvolutionBackprop/GrouConvolutionBackprop Multiply fusion; Added functional tests
2020-08-14 13:47:02 +03:00
Ilya Churaev
d8133824b3 Deprecate FusedOp class (#1758)
* Deprecate FusedOps

* Try to fix windows

* Added temp headers
2020-08-14 06:27:58 +03:00
Jan Iwaszkiewicz
680cdacc11 [nGraph] Add Manager to Py API (#1533)
* Added test

* working ManagerWrapper

* Clean-up in ManagerWrapper

* worksave

* fixed building error

* Finished test of constant folding

* remove unused param

* Added get_vector function

* clean up
2020-08-13 19:56:59 +03:00
Alexander Peskov
7c921b8b45 [CPU] Add explicit storage for MemoryNode (#895) 2020-08-13 19:06:20 +03:00
Sergey Lyalin
9a62e00674 TypeRelaxed implementation (#1561)
* RTTI base for ngraph::Node; cherry-pick from another branch, draft

* Added comments, moved code, switched to custom RTTI-based version of is_type

* Move rtti definitions in ngraph op class to the beginning of each class definition as a preparation for the next replacement

* Migrate part of operations to new RTTI

* Migrate GroupConvolution and Concat to new RTTI

* Apply code style for ngraph part

* Rename RTTI_DECLARATION/DEFINITION to NGRAPH_RTTI_DECLARATION/DEFINITION

* Reverted accidentally updated version of mkldnn

* TMP: rewrite RTTI back to constexprions as an attempt to fix static objects initialization order issue

* Apply ngraph code style

* Finalize move back to constexpr for RTTI

* Applied code-style

* TypeRelaxed template class implementation and necessary changes in ngraph + tests.

* Applied code-style

* Fix in fast algorithm in GraphRewrite, add new tests for this and other cases

* Make parent optional parameter for NGRAPH_RTTI_DECLARATION and remove Node::type_info; remove ability to have Node as a parent for type_info

* Try to resolve compilation error on Windows

* The next attempt to fix Windows build: re-introduce get_type_info_static

* Removed file that was removed in master and kept in this branch by mistake

* Next attempt to fix Windows build: externConstexpr

* Attempt to fix win build: extra public (suspect icc bug), remove get_type_info_static as useless.

* Next attempt to fix Windows: proxy const and constexpr

* Fixed constexpr

* Next attmpts: move get_type_info to cpp file

* Code stype fix

* Re-implemented RTTI without use of constexpr; run-time initialization is used; removed global definitions to avoid issues with order of static objects initialization

* Removed externConstexpr flag and removed TRANSFOMRATIONS_API for TypeRelaxed

* get_type_info_static initializes static local constant with type_info that is used for CLASS::type_info and CLASS::get_type_info

* Removed not needed debug output and useless comments

* Implemented better copy ctor for Node

* Fixed VisualizeTree issue for TypeRelaxed: stopped using < and > in type_info::name

* Better comments and names for methods

* Remove unused include

* Remove commented line

* Workaround for legacy conversion that uses Node::get_type_info().name as a type for the resulting CNNLayer leading to incorrect types for TypeRelaxed-based operations and then to fail in plugins

* Fixed typos, explicit ctor for TypeRelaxedBase, explanation for the need of get_overridden_output_type

* Fix typo

* Fixed issue with non-static name in type definition for TypeRelaxed and fixed WrapType to make it compatible with hierarchical relations between types

* Reverted default ctor for Output and reverted ability to reduce number of outputs for a Node; syntactically better debug message for a Node

* Cover methods of TypeRelaxedBase by tests

* Apply code-style
2020-08-13 18:45:37 +03:00
Ilya Churaev
618c61537b Remove some builders for old operations (#1736)
* Remove some builders

* Removed reshape v0 builder

* Fixed code style
2020-08-13 07:17:24 +03:00