Commit Graph

291 Commits

Author SHA1 Message Date
Alexey Varyzgin
b6b536f23c [CPU] [MSVC] memcpy and memcpy_s were unified for all layers and SIMD functionality was enabled on VS2019 (#1374) 2020-08-27 13:49:31 +03:00
Evgenya Stepyreva
0182b97980 ExperimentalDetectron* shape infer old-style (#1962)
* ExperimentalDetectron* shape infer old-style

* nGraph reshape tests
2020-08-27 11:52:04 +03:00
Vladimir Paramuzov
ae8be58701 [IE CLDNN] Mixed mode support for proposal primitive (#1857) 2020-08-27 11:43:24 +03:00
Ilya Churaev
a072c3b7b6 Fixed mean image support for IR v10 (#1926)
* Fixed mean image support for IR v10

* Fixed comments
2020-08-26 20:45:54 +03:00
Anton Pankratv
7c1b87c7aa Query network should return all supported layers (#1845)
* Query network should return all supported layers

* Added other plugins. Fixed hetero and multi

* IRv7 test use legacy impl
2020-08-26 15:33:37 +03:00
Maksim Kutakov
99136f0940 [IE TESTS] Add Reverse Seq single layer test (#1933)
* [IE TESTS] Add Reverse Seq single layer test

* Added spaces for better readability.
2020-08-26 15:13:32 +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
Wenzeng Chen
0f524b5523 [IE][VPU]: Fix NCE hang due to input dimensions exceed HW limitation (#1636)
* Fixed NCE hang due to input dimensions exceed HW limitation
* Added convolution test for big input dimensions

Signed-off-by: wenzengc <wenzeng.chen@intel.com>
2020-08-26 10:38:58 +03:00
Anton Chetverikov
84c7b048db SoftPlus operation implementation (#1365) 2020-08-25 19:36:39 +03:00
Ivan Tikhonov
7d1c5877ff Common specific creator for ops to be converted to ie ops (#1928)
* Add common specific creator for ops to be converted to ie ops

* fix cpu func tests

* Add macro for specific creators
2020-08-25 19:23:09 +03:00
Liubov Batanina
c5b19aa8f9 Added BatchNormInference tests (#1927) 2020-08-25 16:28:05 +03:00
Edward Shogulin
ee96595d1d [LPT] BLOCKED layout ignoring (#1873)
* [LPT] BLOCKED layout ignoring

* [LPT] Permute transformation tests

* [LPT] Tests rework
2020-08-25 10:43:33 +03:00
Alexandra Sidorova
a2f0eef6aa [CPU] Added H-Swish activation (#1445) 2020-08-25 10:19:06 +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
Liubov Batanina
719797326b Added test for Pad (#1902)
* Addded test for Pad

* Add builder
2020-08-24 14:16:29 +03:00
Gleb Kazantaev
762cb8d6ab Fix addOutput (#1888) 2020-08-21 05:51:42 +03:00
Ilya Churaev
3cb7454f67 Fixed error message for ONNX importer tests (#1880) 2020-08-20 18:46:34 +03:00
Ilya Lavrenov
5d328b94a6 Reuse make_executable_network in ImportNetwork (#1869)
* Reuse make_executable_network for ImportNetwork

* make_executable_network returns ExecutableNetwork cpp wrapper
2020-08-20 18:34:19 +03:00
Roman Lyamin
3a9e160031 [IE TESTS] Added single layer tests HSwish (#1861) 2020-08-20 13:32:16 +03:00
Anton Dudchenko
de8bfae243 [IE][VPU]: Execution graph via ngraph for VPU plugin (#1572)
* Execution graph via ngraph for VPU plugin
* Enable ExecGraphTests
* Assert throw for multi device in tests
* Assert throw for gna device in tests
2020-08-20 12:56:12 +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
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
Anna Alberska
a2b71aef56 [GNA] add support for 4d eltwise (#1353)
* [GNA] add support for 4d eltwise

* cpplint fix

* refactor

* fix FP16 broadcast pass

* change anonymous function to InferenceEngine::details::product

* introduce anonymous function to the pass & add layer checks

* refactor tileBlob lambda
2020-08-19 16:03:18 +03:00
Gleb Kazantaev
939fc2f21b Fixed addOutput (#1844)
* Fixed addOutput

* Added tests; removed addOutput second call
2020-08-19 14:57:28 +03:00
Anton Chetverikov
4925485c14 ExtractImagePatches MO implementation and nGraph transformation (#739) 2020-08-19 13:23:41 +03:00
Ilya Lavrenov
8b98f20480 LoadNetwork interface: executable network is returned as return value (#1840)
* LoadNetwork interface

* Added reference to SOPointer to returned ExecutablNetwork

* Fixed test
2020-08-19 11:44:29 +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
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
Ilya Lavrenov
618c6f7f23 Return serialization to IR v7 under conditional compilation (#1820) 2020-08-19 06:53:17 +03:00
Ilya Churaev
f613f618f1 Fixed set/get batch size logic for scalar inputs (#1837) 2020-08-19 06:37:04 +03:00
Gleb Kazantaev
8c5262f864 Convert Pad to GroupConvolution transformation (#1826)
* Added ConvertPadToConvolution pass

* Removed NasNet transformation from MO

* Renamed Conv to GroupConv; Added tests

* Fixed typo; Added RTTI
2020-08-18 17:40:45 +03:00
Anna Alberska
ccfa2da9bd [GNA] Implement ImportNetwork from stream (#1743)
* add ImportNetwork from stream

* add test for importing network from stream
2020-08-18 16:41:46 +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
Tomasz Socha
5e57bdc429 [FIX] Fix data layout for reshaped network (#1748)
* [FIX] Fix data layout for reshaped network

* [PATCH] Don't change compatible layouts

* Add UT for reshaped network

* FIX no. 1
2020-08-17 22:14:39 +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
Maksim Doronin
66aa119b11 [IE][VPU]: Refactor vpu configs (#1334)
* [IE][VPU]: Refactor vpu configs

* [IE][VPU][GT]: Refactor vpu configs usage in GT

* [IE][VPU]: Refactor vpu configs usage in myriad plugin

* [IE][VPU]: Refactor vpu configs usage in tests

* [IE][VPU]: Refactor vpu configs usage in deprecated_tests

* [IE][VPU]: Refactor vpu configs usage in tools

* [IE][VPU]: Use hddl metric vars instead of macros

* [IE][VPU]: style fixes

* [IE][VPU]: Replace MYRIAD_FORCE_RESET with MYRIAD_ENABLE_FORCE_RESET

* [IE][VPU]: Resolve confilcts with MYRIAD_TILING_CMX_LIMIT_KB

* [IE][VPU]: Remove MYRIAD_PLATFORM from tools

* [IE][VPU]: Fix DISABLE_REORDER config in StridedSlice

* [IE][VPU]: Redesign config headers hierarchy

* [IE][VPU]: Clarify comments related to vpu configs

* [IE][VPU]: Leave default values of deprecated configs

* [IE][VPU]: Revert beh tests on VPU_MYRIAD_PLATFORM

* [IE][VPU]: Revert beh tests with deprecated configs

* [IE][VPU]: Resolve conflicts

* [IE][VPU]: Revert opencv dependency
2020-08-17 17:30:38 +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
Mikhail Letavin
7c9815b4c1 [IE CLDNN] Export runtime graph as nGraph function (#1684) 2020-08-17 16:27:33 +03:00
Maxim Andronov
5d73859255 [CPU] fix conv + concat case and add tests (#1747) 2020-08-17 14:25:53 +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
Anton Pankratv
bfedee88b2 Added split test into template plugin (#1669)
* Added split test into template plugin

* Fixed split test

* Fixed test parameters style
2020-08-15 14:44:13 +03:00
Andrew Bakalin
0d35179234 [IE][VPU][GT]: Add pass for marking fast stages (#1579)
It was discovered that it is sometimes useful to mark fast stages (e.g. stages that process less than 100 elements) in order to be able to parse them from final performance report and estimate its contribution into performance.
* Added pass for marking fast stages
* Introduced unit tests
2020-08-14 18:10:57 +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 Lavrenov
a4dcfed1a9 Simplified plugin interfaces (#1745)
* Simplified plugin interface

* Allow not implemented

* Fixes

* Fixed CPU plugin tests

* Fixed tests dependencies

* Fixes

* Fixed GPU plugin compilation

* Renamed plugin

* Fixes

* Removed tests for plugin base

* Fix2

* Fix 2

* Define a macro to define plugin creation function

* Clean-up

* Fixed OSX build

* Fixed CentOS

* Fixed exception catch / throw

* Fixed clang issue

* Fixed python tests on macOsx
2020-08-14 12:11:54 +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
Ilya Lavrenov
a8842ec32e Updated mock interfaces in tests (#1762)
* Updated mock interfaces in tests

* Added mock_engine dependency
2020-08-13 20:17:30 +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
Gleb Kazantaev
e752911b62 nGraph passes clean up (#1742)
* Cleanup pass::Manager;Update VisualizeTree to inherit FunctionPass; Removed deprecated tranformations types

* Removed legacy code; Updated docs
2020-08-13 06:49:51 +03:00