Commit Graph

2881 Commits

Author SHA1 Message Date
Szymon Irzabek
38d16e24e9
Add basic gna2 model dump function (#4034)
* [GNA] Add gna model dumping

* [GNA] Modify debug layout, add timestamp, fix compound bias dump

* [GNA] Move data dump to another file

* [GNA] Create model data dump file only when needed
2021-03-17 15:51:43 +03:00
Gabriele Galiero Casay
0d0f06a2e4
Clamp specification refactoring (#4663)
* Refactor specification

* Complete detail description section

* Rewrite mathematical formula

* Fix range of values for min and max attributes

* Add note for conversion policy between float and integral type of input tensor

* Address review comments

* Fix typo in max attribute
* Remove redundant examples
2021-03-17 13:37:49 +03:00
Maksim Derbasov
2a19fc2d8a
Fix warnings spotted by cl compiler (#4793)
* Fix warnings spotted by cl compiler

* Use inline instead of anonymous namespace

* Review comments
2021-03-17 13:08:42 +03:00
Katarzyna Mitrus
cc718f5602
Fix shape propagation with broadcast to second input (#4826)
* Reshape interval propagation tests with scalar

* Set or_tensor result shape to log_or ourput

* Create result HostTensor without shape

* Add tests for scalar broadcast in binary ops

* Add tests for 1D inputs
2021-03-17 12:21:53 +03:00
Mikhail Nosov
4c5d9c2a1b
[Template]: Metrics IMPORT_EXPORT_SUPPORT and DEVICE_ARCHITECTURE (#4818)
Test:
Use benchmark_app from this PR #4814

Run ./benchmark_app -h
Verify that template plugin is listed in supported caching devices

Run ./benchmark_app -m <model.onnx> -d TEMPLATE -i <file> -cache tmpCache
Verify that tmpCache is created and network is exported to blob
Verify that if model is ONNX (e.g. ResNet50) - that loading of network is performed faster when cache is available

Run several times: ./benchmark_app -m <model.onnx> -d TEMPLATE -i <file> -cache tmpCache -single_load
Verify that if model is ONNX (e.g. ResNet50) - that loading of network is performed faster when cache is available
Verify that in this mode loading of network is faster than without "-single_load" option
2021-03-17 12:15:53 +03:00
Evgenya Stepyreva
f3abba3685
[ MO ] Put FQ fuses under the disable_fusing key (#4829) 2021-03-17 08:51:40 +03:00
Mateusz Bencer
7f3a8ce885
Move ONNX Editor to separate target (#4293)
* Subgraph extraction in ONNX models

* Windows compilation error fix + docs update

* Code cleanup after the first round of reviews

* CI compilation error fix

* Even more CI compilation error fixes

* Proper usage of ADL in generic code

* ONNX shape inference related code cleanup

* Disable the onnx test utils when pb-lite is used

* PB dependency removal from UT, strong types for input and output edges, more verbose errors in tests

* Fix for the protobuf descriptor database corruption

* testing visibility changes

* Revert the changes that didn't work

* Make tests green again?

* Make the current tests pass

* Remove the ONNX header from editor's tests

* Switch from stable_partition to remove_if because of compiler bugs

* Obsolete test removal and cmakelists cleanup in tests

* Macos failed, reverting some changes

* Handle the multiple output consumers UC

* Keep the tensor name when replacing an initializer

* Cutting a graph with multiple consumers of inputs and initializers

* Subgraph extraction with multiple initializer consumers

* Add CMakeList, move files

* fixed headers locations

* fixed calling tests

* apply code styles

* change namespace to onnx_editor

* removd not needed dependencies to onnx_editor

* Remove linking libonnx from unit-test

* Consider all flavors of protobuf libraries

* disable lto for onnx and onnx_proto

* revert set ONNX_INCLUDE_DIR change

* create new target onnx_common

* cmake dependencies clean-up

* Added onnx_common visibility

* pass ModelProto as reference + remove redundant dependencies

* expose onnx symbols by onnx_common

* remove -fno-lto, move InputEdge and OutputEdge to other header

* configure onnx linking for MSVC and APPLE

* remove unused comment

* fixed linking configuration for msvc and apple/clang

* clean cmakes

* added dependencies

* remove onnx and onnx_proto from NGRAPH_EXPORT_TARGETS_ENABLE

* make onnx and protobuf dynamic

* cmake dependency clean-up

* added onnx patch - make only onnx_proto shared

* use protobuf should depend on BUILD_SHARED_LIBS

* fixed patch

* fixed install targets

* add if to install protobuf

* fixed onnx flag

* move protobuf install

* cmake dependencies

* added protobuf header include dir + clean-up ng cmake

* added protobuf to ng targets

* fix apple build

* dependencies clean-up

* make onnx_editor static lib

* remove onnx editor visibility

* fixed protobuf export enablement

* fix apple build

* test build protobuf by fetch content

* fix apple protobuf build

* Docs update

* Producer name update in test onnx models

* More comments in the subgraph extraction code

* Merge remote-tracking branch 'upstream/master' into mbencer/MoveEditorToSeparateLib

* add dependency to onnx_proto for test utils

* dependency to ngraph_test_util

* ngraph_test_util dependency. part. 2

* conditional dependency of onnx to ngraph_test_util

* Apply suggestions from code review

Co-authored-by: Tomasz Socha <tomasz.socha@intel.com>

* review remarks

* remove onnx_proto default visibility

* camke remarks, not exporting onnx_common and onnx_editor to target set

* [test fix macos CI] Revert "remove onnx_proto default visibility"

* set onnx_proto visibility only for macos

* [PyPI] remove rpath for dylib

* Corrected cmd

* fix protobuf-lite linking

Co-authored-by: tomdol <tomasz.dolbniak@intel.com>
Co-authored-by: Tomasz Jankowski <tomasz1.jankowski@intel.com>
Co-authored-by: Mateusz Tabaka <mateusz.tabaka@intel.com>
Co-authored-by: Tomasz Socha <tomasz.socha@intel.com>
Co-authored-by: mryzhov <mikhail.ryzhov@intel.com>
2021-03-17 07:07:53 +03:00
Andrey Dmitriev
fab2b1b911
[DOCS] added iname/oname (#4825) 2021-03-16 23:37:16 +03:00
Vladislav Volkov
758af64bb8
MKLDNN weights cache key calculation algorithm changed (#4739) 2021-03-16 21:44:20 +03:00
Mikhail Ryzhov
31bd00f385
[PyPI] remove rpath for dylib (#4732)
* [PyPI] remove rpath for dylib
* use os.system instead of subprocess
2021-03-16 17:01:25 +03:00
Anastasia Popova
7111aff4a9
Fix of tensor names propagation in loops and in add_opoutput(). (#4565)
* Added tensor names propagation in loops and add_opoutput.

* Removed wrong changes.

* Fixed result rename test.

* Stage names fixed.

* Added tensor names propagation to outputs for caffe, tensorflow.

* Added tensor names propagation to outputs for kaldi.

* Fixed bugs.

* Bug fixed.

* Added fake outputs removal.

* Fixed bug.

* Added removal attr to fake outputs in kaldi, caffe.

* Fixed bug.

* Port indices fixed.

* Fixed fake outputs removal.

* Added get_attribute_between_nodes, set_attribute_between_nodes methods, fixed fake output removal.

* More comments added.

* Removed unnecessary stage sets in tests.

* Removed unnecessary output check.

* Revert wrong change.

* New line at the end of file.

* Output cut test.

* Output cut test added.

* Output cut test.

* Added unit tests, comments. Code refactoring.

* Removed unnecessary soft_get.

* Fixed bug in output_cut, code refactoring.

* Code refactoring.

* Added comments.

* Fixed bug in while loop.

* Corrected comments, code refactoring.

* Comments edited, code refactoring.

* Code refactoring.
2021-03-16 16:00:56 +03:00
Andrew Bakalin
c644cbde04
[IE][VPU]: Limit dlclose() WA to be used for Ubuntu only (#4807)
* Recently we have merged the WA for MyriadPlugin to be not unloaded at runtime for Linux systems.
It has been found that there are some problems with the usage of this linker option on CentOS, which led to Segmentation Fault on it, on the second call of dlopen() on myriadPlugin.
I tried to update glibc version on CentOS (to 2.28) and the problem disappeared.
Both Ubuntu 18 and 20 works fine and as it was requested as the used platform for the initial problem, I've decided to limit the solution for Ubuntu OS only.
2021-03-16 14:46:44 +03:00
Vladimir Gavrilov
0f4f912eab
Specification of the operation DFT (#4404)
* Created opset7.md to add the specification of the operation FFT.

* Started to write the specification of the operation FFT.

* Added link to the specification of the operation FFT.

* Continued to write the specification of the FFT.

* Written about inputs and outputs of FFT.

* Started to write examples.

* Added example when there is no input 'signal_size'.

* Added more example.

* Small fixes.

* Small fix.

* Renamed FFT to DFFT.

* Small fix.

* Small fix.

* Started to write the algorithm of FFT.

* Added asserts.

* Started to write the method __call__ of the class of DFFT calculation.

* Fixed category.

* Continued to write the algorithm of the FFT calculation.

* Continued to write the algorithm of the FFT calculation.

* Continued to write the algorithm of the FFT calculation.

* Continued to write the algorithm of the calculation of DFFT.

* Written the algorithm of the calculation of DFFT.

* Small fix.

* Renamed operation.

* Added examples of 3D input tensors.

* Covered complex number representation.

* Written formulas for FFT.

* Written about start point of trimming.

* Small fixes.

* Small fixes.

* Some fixes.

* Added some note.

* Added a description of the calculation of the output shape.

* Added examples with unsorted axes and with (-1) in signal_size.

* Fixed range of axes indices.

* Small fix.

* Small change.

* Added T_SIZE type.

* Added negative axes support.

* Some fixes.

* Some fixes.
2021-03-16 14:20:47 +03:00
Vladimir Gavrilov
37b251eb76
Specification of the operation IDFT (#4435)
* Written the draft of the specification of the operation IFFT.

* Small fix.

* Renamed the operation IFFT into DIFFT. Deleted attribute.

* Renamed operation to IDFT.

* Deleted int8 type.

* Added examples of 3D input tensors.

* Added formulas and text.

* Fixed ie_docs.xml.

* Fixed sign in the IFFT formula.

* Some fixes.

* Added examples with unsorted axes and with (-1) in signal_size.

* Some fixes.

* Small fix.

* Small fixes.

* Added type T_SIZE.

* Deleted redundant sentence.

* Added support for negative axes.

* Some changes.
2021-03-16 14:20:24 +03:00
Mikhail Nosov
7f9daadc08
Model caching support - Core part (#4661)
* Model caching support - Core part

Introducing model caching support
Use core.SetConfig({{CONFIG_KEY(CACHE_DIR), <dir>}}); to enable caching of models

OpenVINO will try to create caching folder if it doesn't exist, but it is recommended for client to create caching folder with necessary permissions before enabling cache in config

For caching, plugins shall support import/export functionality
Plugin requirements:
- Add METRIC_KEY(IMPORT_EXPORT_SUPPORT) in SUPPORTED_METRICS to support caching
If plugin has different device architectures with different caches, i.e.
For "GNA.0" - one cache, for "GNA.10" - another cache
In this case plugin shall support DEVICE_ARCHITECTURE metric and return different strings for different DEVICE_ID's

Added functional tests

* Fix CentOS build issues

* Few updates according to code review

* Revert unnecessary changes for Import/Export core implementation

These changes affect old behavior and may be undesired
For caching support these is no need to change anything in this area
If needed, such removal of 'Magic' usage can be done under separate task in future

* More tests:
1) Verify that Imported data from stream is the same as was exported
2) Verify that cache is not loaded when config in LoadNetwork is changed
3) Verify that if CNN Network is changed between ReadNetwork and LoadNetwork - cache is not loaded

* Update of NetworkCompilationContext

Put back functionality of calculating hash based on runtime information, weights
Implemented OstreamHashWrapper to avoid serialization to buffer

* Correction of CACHE_DIR key description

* Unit tests for compilation_context

Changes:
1) Improved handling of OstreamHashAdapter
2) Improved runtime info serialization (not just PrimitivesPriority and affinity)
3) Removed redundant weights hash calculation

* Fix GCC 4.8 build issues

* Compilation context updates
1) Use hash of sum of serialized data to get hash of network. It is more efficient comparing to weights sum calculation
2) CalculateFileInfo - convert path to absolute ("./test.blob" and "test.blob" shall give same hash)

* Hash - added more rt_info attributes + tests

- PrimitivesPriority
- FusedNames
- Dequantization

* Moved "get_absolute_path" macro to file_utils.h

* Make 'absoluteFilePath' a library API, not macro

* One more unit test for fileName hashing

* Fix compilation error after merge with latest master

* Allow tests to be executed in parallel (stress mode)

* More minor updates for stress testing

Now it allows to execute tests with '--repeat=100' option where one test is executed in multiple processes simultaneously

Example:
./gtest-parallel <openvino_dir>/bin/intel64/Debug/ieFuncTests --gtest_filter=CachingTest* --repeat=10

* Use absolute model file path for calculating blob name

* Added 'createDirectoryRecursive' API to plugin_api/file_utils
2021-03-16 14:13:45 +03:00
Tatiana Troilova
0518840630
updated third-party-programs.txt (#4789) 2021-03-16 14:07:16 +03:00
Ilya Lavrenov
1f635f9435
Move link of CC library under cmake macro (#4779) 2021-03-16 14:04:48 +03:00
Irina Efode
72c66b1a91
[IE TESTS] Fix issue with assert (Failed tests are reported as ) (#4794) 2021-03-16 12:59:45 +03:00
Mikhail Nosov
9df8502bc8
Fix issue with GNA Import/Export. (#4563)
* Fix issue with GNA Import/Export.

Application may create ostream and write some app-specific header to beginning of stream.
GNA plug-in shall not 'seekg' to beginning of stream where app-specific content is located.
Instead it shall seek to the original position of stream

Functional test is also updated to cover this case

* Updated according to review comments

- Check return code right after 'istream::tellg'
- Added 'applicationHeader' as parameter to base ImportExport tests

* Error check for startPos + unit test

* Suppress deprecated warnings like in other GNA tests
2021-03-16 12:57:13 +03:00
Tomasz Jankowski
063a296842
[ONNX] Add support for Upsample opset1 (#4678) 2021-03-16 10:30:41 +01:00
Andrey Zaytsev
7343fcc94e
Feature/cherry pick 4635 to master (#4788)
* Feature/vpu doc fixes 2021 3 (#4635)

* Documentation fixes and updates for VPU

* minor correction

* minor correction

* Fixed links

* updated supported layers list for vpu
2021-03-16 12:03:41 +03:00
Ivan Novoselov
ec5df02dac
Revise OneHot operation reference implementation (#4330)
* Auto benchmarks for evaluate(...) and extra unit tests.

* Test suite for manual i/o examination.

* Template on input type. Constant folding tests the 'count_ops_of_type' issue.

* Multidim manual tests

* NgOp&Ref: Unit tests Ok. NB evaluates_map

* Stable. Negative indices as if larger than depth. Benchmarks removed.

* Added Serialization SLT

* I/O shapes consistency checks

* Consistency checks in evaluate(). Removed the ref from evaluates_map.

* removed excessive #include from evaluates_map

* Code style
2021-03-16 11:28:30 +03:00
Alexey Varyzgin
8cfb63cb56
[CPU] proposal_onnx tensor check was added and test was disabled (#4603) 2021-03-16 11:21:57 +03:00
Ilya Lavrenov
7a533f7abf
Fixed some klockwork issues in C API samples (#4773) 2021-03-16 11:00:59 +03:00
Gorokhov Dmitriy
b934851e9d
[CPU] Disabled FP32 Pooling with FQ fusing due to absense of optimized implementation (#3755) 2021-03-16 09:09:15 +03:00
Mikhail Letavin
c9d1700430
[IE CLDNN] Fix missing variable initializations and types (#4670) 2021-03-16 08:28:00 +03:00
Roman Lyamin
75f9fcd134
[IE CLDNN] Fix StridedSlice for hbonet (#4493) 2021-03-16 08:26:14 +03:00
Katarzyna Mitrus
5f098e1079
nGraph code style upgrade to clang-format-9 (#4721)
* ngraph clang-format upgrade to 9

* Reformatted files

* Remove comma at the end of test data vector
2021-03-15 22:06:01 +03:00
dependabot[bot]
b83b5115a5
Bump flake8 from 3.8.4 to 3.9.0 in /ngraph/python (#4782) 2021-03-15 17:59:29 +01:00
Bartosz Lesniewski
43dcc883d3
Revise Concat op - specification (#4542)
* Add more info on axis attribute possible range

* Added a negative axis example

* Minor edit

* Use back-tick character to wrap all formulas
2021-03-15 19:27:12 +03:00
Vladimir Zinoviev
7ca7e7d9c4
[LPT] Concat dequantization shape fix (#4702) 2021-03-15 17:47:56 +03:00
Rafal Blaczkowski
dbd3a3d7a4
Enable protobuf-lite in ONNX CI tests (#4487) 2021-03-15 14:34:02 +01:00
Krzysztof Bruniecki
ecee373220
Gna cnn2d with pooling support (#4574)
* [GNA] Support Pooling 2D

  Refactor Pooling
  Remove unused sum pooling
  Skip ReorderPoolActivation pass when 2D pooling detected
  Enable fusing of Pool2D with other components into GNA Operation

* Support GNA_SW_FP32 mode for Pooling 2D with tests

* Apply review

typo

* Apply review

Restore indentation
2021-03-15 16:16:45 +03:00
Katarzyna Mitrus
95a13e05d5
Enable MatMul 1D multiplication by transformation to GEMM (#4509)
* MatMul tests

* Tests update

* More tests

* IE tetst manifest cleanup

* Enable MatMul 1D multiplication by transofrmation to GEMM

* Add unsqueeze to transform tests

* Fix runtime info

* Update transformation condition

* Remove Xfail from python tests

* Add more tests for ignoring 1D transpose true

* Ignore transpose for 1D in MatMul transformations

* Resolve python api xfails

* Use ngraph::opset namespace

* Style apply

* Add MatMul single layer tests for 1D
2021-03-15 13:44:57 +03:00
Bartosz Lesniewski
635ffc760a
Add a check for negative axis attr out of bounds (#4543) 2021-03-15 13:41:43 +03:00
Ilya Lavrenov
24fb09edb3
Improvements in cmake scripts (#4766)
1. Find Threads only once in IEDevScripts package
2. Small refactoring in IE Dev Package
2021-03-15 13:07:38 +03:00
Ilya Lavrenov
753f4d5918
Second attempt to fix CVS-50011 (#4659)
* Second attemp to fix CVS-50011

* Clarified OpenCV dependencies

* Fixes
2021-03-15 13:04:20 +03:00
Irina Efode
8e080d4504
[IE TESTS][Conformance] Add conformance tests runner (#3694)
* [IE TESTS][Conformance] Add conformance test target

* Handle creashes. Added crashed tests to the report

* Fix report and flags

* Apply comments

* Apply comment

* Remove flag, fix

* copyrights

* Generate in

* Remove extra code

* fix mac

* CI fixes

* fix win

* Fixes

* Input fixes

* fix flag

* Add generate in

* Fix compare

* Fixes CI
2021-03-15 12:20:53 +03:00
Maksim Doronin
4f43598da4
[IE][VPU]: Decrease non-execute tasks priority (#4756)
* Only executor threads now have top task priority. Other runtime threads have lower priority. Other non-runtime tasks (which do not participate in inference) have much lower priority.
2021-03-15 12:10:07 +03:00
Vladislav Golubev
87afe28040
[LPT] ConvolutionTransformation: shape normalize of dequantization constant after convolution (#4696)
* [LPT] normalizeDequantizationShape added to NetworkHelper

* [LPT] ConvolutionTransformation: added shape normalize of dequantization constant after convolution
2021-03-15 11:12:51 +03:00
Anna Khakimova
7e572dba76
* GAPI: Fix for issue for ARM64 (#4752) 2021-03-13 18:18:34 +03:00
Nadezhda Ageeva
f41634eaba
[IE Tools] Fix seed for random generator in benchmark_app(s) to have reproducable data between runs of the same application (#4757) 2021-03-13 16:41:39 +03:00
Irina Efode
11f591c168
Unique Subgraphs\Operations extractor (#3742)
* Initial Subgraphs Dumper and IR runner test inplementation

* Implement matchers configuration

* Refactor MatcherConfig

* Add OP cloners factory

* Remove IR runner test (to be added in separate PR)

* Use different nodes comparison method

* Remove extra include of <any> which fails build with old glibc

* Add README.md

Co-authored-by: Mikhail Treskin <mikhail.treskin@intel.com>
2021-03-12 17:22:38 +03:00
Mingyu Kim
e6757dbd00
[IE CLDNN] Clarify ocl build error message (#4748)
As current short_msg is usually irrelevant actual error, do not print it.
Instead, suggest to use srcdump.
2021-03-12 16:33:18 +03:00
Ilya Lavrenov
96933c5598
Reflected that plugin on OSX are also .so (#4754) 2021-03-12 15:25:43 +03:00
Tomasz Dołbniak
6ac849eed3
Fix handling of the QuantizeLinear op connected to multiout ops (#4741) 2021-03-12 11:01:37 +01:00
Elizaveta Lobanova
39ae56d71f
[GNA] Move weights transposition from NCHW to NHWC to GNA pass after FQ passes (#4614) 2021-03-12 12:12:41 +03:00
Ilya Lavrenov
c88e1f7a59
Added check for shared library to ie_add_vs_version_file (#4738) 2021-03-12 10:06:04 +03:00
Mikhail Letavin
ad4cfbfceb
[IE CLDNN] Fix NormalizeL2 creation in QueryNetwork (#4310) 2021-03-12 09:44:12 +03:00
Mateusz Tabaka
13066a0bc6
Propagate input rank for dynamic output shape in BatchToSpace,DepthTo… (#4588)
* Propagate input rank for dynamic output shape in BatchToSpace,DepthToSpace,Pad,SpaceToBatch,SpaceToDepth

* Add tests for SpaceToDepth, DepthToSpace dynamic input
2021-03-12 07:17:24 +03:00