Commit Graph

3338 Commits

Author SHA1 Message Date
Gleb Kazantaev
b291ca8cfa
Use Serialization as a default engine in MO (#5347)
* Use Serialization as a default engine in MO

* Added cmd option to use old serialization

* Added mapping file generation

* Test mapping file generation

* Fix setBatchsize parameters order; fix mapping file generation

* Added FrameworkNode; added method to read models with custom ops but without extensions

* Added python API for read_network_without_extensions function; updated mo not to use IECore

* Added read_model_without_extensions to IReader and IParser

* Fix V7 IR reader

* Fix pword value

* Fix dllexport macro usage

* Add metainfo to IR

* Fix nGraph code style

* Fix license header

* Restore prepare_emit_ir behaviour

* Fix compare_function to resolve situation when Result input port has multiple names

* Update Compare Functions

* Fix FrameworkNode validation

* Self-review

* CodeStyle check

* --use_fallback -> --use_legacy_ir_generation

* Sort imports in main.py

* --path_to_model -> --input_model

* Use logging instead of print

* Code simplifucation&cleanup

* Fix offline_Transformations key

* Fix GeneraeMappingFile comments

* Use Extension approach to work with custom ops

* Fix versions check

* Code clean-up

* Moved FrameworkNode to inference_engine_transformations library

* Fix FrameworkNode includes

* Code clean-up
2021-05-04 16:40:20 +03:00
Vladimir Zinoviev
866515184c
[LPT] Checks to not transform layers with incorrect zero points (#4764)
* [LPT] Checks to not transform layers with incorrect zero points

* [LPT] Fold not transformed weights

* [LPT] Minor fixes; review from #5313
2021-05-04 16:02:27 +03:00
Nico Galoppo
895b605c06
[IE CLDNN] Fix OpenCL dependency for clDNN tutorials (#5491) 2021-05-04 15:52:33 +03:00
Olesya Martinyuk
d16c215fde
Add CPU info to time tests (#5451) 2021-05-04 14:49:10 +03:00
Egor Duplensky
2a580e7c26
Extend blobs dumping with filtering by environment variables (#5113)
* Extend blobs dumping with filtering by environment variables

The idea is to dump blogs without rebuilding

We cannot just use environment variables without compile-time flag
because of security flaws.

Instead, it is expected that developers just always set additional
macro (BLOB_DUMP_PATH) which is not set for the production builds:

export CXXFLAGS="-DBLOB_DUMP_PATH=\\\"mkldnn_dump\\\""

This macro activates blob dump filtering using environment variables.

To prevent unnecessary dumping, blobs are not dumped by default even
if macro is defined.
2021-05-04 14:36:28 +03:00
Roman Kazantsev
d716db4acc
Extend Python nGraph API with Einsum-7 and test nGraph reader (#5486)
* Extend nGraph Python API and test IE IR reader for Einsum

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

* Format description for test auxiliary function

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

* Remove print from the python test

Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
2021-05-04 14:04:21 +03:00
Ilya Lavrenov
e8a2ca6fb6
Added precompiled headers to inference_engine_obj (#5490) 2021-05-04 12:27:48 +03:00
Paul Youngsoo Ahn
29a8be523d
[IE CLDNN] Extended eltwise fusing (#5181)
* [cldnn] Add initial fused conv eltw POC

- Add cldnn unit test
- Add fused dependency list to the fused_primitive_desc
- fuse_nodes update for saving fusing history and depenecies
- Modify Jitter to create jit constants using fused dependencies
- Add cldnn unit-test cases for multiple serial and parallel eltwise fuse pattern
- Modify Jitter and add default values in sum input

Signed-off-by: Ahn, Paul Y <paul.y.ahn@intel.com>

Co-authored-by: Andrew Kwangwoong Park <andrew.kwangwoong.park@intel.com>

* [cldnn] Update fused_conv_eltwise cldnn unit test

- Add execute and compare function
- Add cldnn unit-test case for multiple parallel eltwise and additional eltwise
- Add cldnn unit-test case for combination of multiple parallel eltw
- Add cldnn unit-test cases for serial and diverged quantize and eltwise

Signed-off-by: Andrew Kwangwoong Park <andrew.kwangwoong.park@intel.com>

* [cldnn] Modify checking fusibility of eltwise fusing

- Add new checking fusibility rule in prepare_primitive_fusing
- Move cldnn eltwise fusing test to fusing_gpu_test.cpp
- Modify method to get input var name in  jitter

Signed-off-by: Ahn, Paul Y <paul.y.ahn@intel.com>

* [cldnn] Fix fusing item type and activation fusibility checking condition
- Extract input_data_supports_fusings from fuse_activaion_f
- Fix checking supported mode bug

Co-authored-by: Andrew Kwangwoong Park <andrew.kwangwoong.park@intel.com>
2021-05-04 09:57:06 +03:00
Ilya Lavrenov
b47d11e31e
Removed useless iostream include (#5357)
* Removed useless iostream include

* Fixed samples compilation

* Klockwork fixes for template plugin
2021-05-03 17:12:00 +03:00
Aleksandr Pertovsky
5d8f209df6
[CPU] Add Roll support (#5112) 2021-05-03 15:01:05 +03:00
Chenhu Wang
0808975a37
[CPU] windows_Interpolate_fused-FQ_nearest-mode_nspc-layout_fix (#5317) 2021-05-03 14:48:42 +03:00
Alexey Varyzgin
7d2ec02d65
[INT8][BF16] INT8 + BF16 feature was enabled (#5059) 2021-05-03 13:29:38 +03:00
Vitaly Tuzov
bb022e2d26
Added test for opset7::Gather (#5373) 2021-04-30 19:17:48 +03:00
Katarzyna Mitrus
a7353f4b28
Revision of Sqrt op and reference implementation (#5446)
* Add NGRAPH_RTTI

* Instantiate unary ops type prop tests for Sqrt

* Add sqrt backend tests

* Add rounding for int types to Sqrt reference implementation
2021-04-30 16:53:14 +03:00
Irina Efode
c99257e1f9
[IE TESTS] Fix bug with constant, const and parameters in summary (#5463)
* [IE TESTS] Fix bug with constant, const and parameters in summary

* Remove lambda
2021-04-30 15:48:18 +03:00
Elizaveta Lobanova
22e4566faa
[GNA] Remove extra reshape before maxpool. Fix activation and maxpool reordering. (#5404)
Fix convolution input transposition for Kaldi models with FakeQuantise layers.
Fix floating point error in gnaFuncTests with debug logs.
2021-04-30 15:42:27 +03:00
Michał Karzyński
bcb67bfb6a
Add support for ONNX BatchNorm-7 and -9 (#5465) 2021-04-30 13:37:34 +02:00
Alexandra Sidorova
03ca3d1ef7
[CPU] Fixed SoftPlus for large positive values (#4932) 2021-04-30 13:34:33 +03:00
Ilya Lavrenov
8b1b900591
CVS-44774: Fixed preprocessing for template plugin (#4118)
* 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
2021-04-30 10:47:29 +03:00
Ilya Churaev
ff9e67e732
Skip MVN operation on constant branches (#5460)
* Skip MVN operation on constant branches

* Added test
2021-04-30 10:37:27 +03:00
Katarzyna Mitrus
cec1e4ae1c
Remove new line symbol (#5459) 2021-04-30 09:53:32 +03:00
Ilya Lavrenov
c52117a09f
Fixed compilation with ninja + clang (#5469) 2021-04-30 08:57:03 +03:00
Ilya Lavrenov
c350f61a42
Move all base wrapper classes from Plugin API to source folder (#5419)
* Small refactoring in TEMPLATE plugin

* Fixed compilation on Windows

* Fixed code style

* Hide CALL_STATUS_FNC helpers to private API

* Moved some base classes to private place from plugin_api

* Updates for VariableState creation

* Take Jane's changes for Demension names

* Revert "Take Jane's changes for Demension names"

This reverts commit 9f6c8fa5a6.

* Removed ICNNNetwork include

* removed more icnnnetwork includes

* Added missed include with ie_input_info.hpp

* Fixed GNA plugin to provide names w/o \0
2021-04-29 19:50:46 +03:00
Gabriele Galiero Casay
2062a648a7
Gelu-7 specification refactoring (#5439)
* Review spec of Gelu-7 operation

* Address review comments

 * Modified formulas
 * Changed type from `T` to *T*
2021-04-29 19:21:45 +03:00
Taylor Yeonbok Lee
05dc0c8cf7
[IE CLDNN] WA for memory increase problem of parallel build for OCL (#5389)
In linux, without malloc_trim, some freed memories are not being returned to system.
Current hypothesis is that a large allocation for compilation is not completely freeed, thought mostly freed.
This does not happendin Windows.
So, added malloc_trim for linux build until we figure out a better solution.
2021-04-29 18:27:05 +03:00
Vladimir Zinoviev
19afae3638
[LPT] INT4 FakeQuantize not transform (#5082) 2021-04-29 18:24:21 +03:00
Vitaliy Urusovskij
68ed12cb98
Enable FetchContent for gflags dependency in stress tests (#5449)
* Enable `FetchContent` for `gflags` dependency in stress tests

* Add `HAVE_SYS_STAT_H`, `HAVE_INTTYPES_H`, `INTTYPES_FORMAT` for stress tests
2021-04-29 14:44:12 +03:00
Svetlana Dolinina
7b52e3155a
Tdnnf (#5255)
* initial changes (IR not generated)

* extractor fix

* convert tdnnf (with correct infer)

* refactoring + comments in code

* added unit tests + couple fixes based on tests

* change order for old convolutions

* fix pylint

* small refactoring

* added if to remove changes in old irs

* doc updated

* fix layout and kernel shapes for old convolutions

* fixed test

* moved test

* fix import in test

* fixed backward compatibility

* review fixes
2021-04-29 14:38:08 +03:00
Mikhail Nosov
6624a77827
Disabled sporadically failed GNAAOTTests (#5455) 2021-04-29 14:10:21 +03:00
Anastasia Popova
07214d0a47
Changed "out_port_id" attribute setting in mapping file to store tensor names. (#5344)
* Removed port id from fw_tensor_debug_info attribute.

* Added port number to tensor names in kaldi, mxnet. Fixed Const naming.

* Sort imports.
2021-04-29 14:05:35 +03:00
Anna Khakimova
b1a4a73328
Pre-processing: Adding DivC and SubC kernels. (#5364)
* [PP] FLuid level tests for mean value preprocessing

* PP] Fluid operations for mean value preprocessing

* * Relaxed tolerance and fix for issue.

* * Fix for issue.

* * Applied comments.

Co-authored-by: Anton Potapov <anton.potapov@intel.com>
2021-04-29 13:38:28 +03:00
Ilya Lavrenov
768aec9d92
Trying to fix MSVC compilation (#5453) 2021-04-29 12:53:14 +03:00
Anton Voronov
18fdc4b694
[CPU] fixed SIGSEGV when moving unaligned data in Quantize node (Issue 51255) (#5262) 2021-04-29 11:41:33 +03:00
Krzysztof Bruniecki
2fb6b46e5a
[GNA] Add limiatations for CNN2D fused layer (#5334)
* Add limiatations for input HWC kernel HW and output C

* Fix single layer tests

* Add limitations for pooling 2d, adjust tests to new limitations

* Disable input padding

* Apply review

* Apply review 2

* Fix undefined type on legacy API

* Fix centos

* fix cpplint

* Simplify
2021-04-29 10:49:00 +03:00
Vladislav Golubev
449f3376e1
[Transformations] ShuffleChannelsFusion fix and tests added (#5448) 2021-04-29 10:47:04 +03:00
Tomasz Socha
64a032fa18
[ONNX] Add ONNX Compress operator. (#5400)
* [ONNX] Add support for ONNX's Compress operator

* NonZero fixes

* Add unit tests as constant_network

* Style

* Move compress tests

* xfail python tests

* Fix func test

* Review Fix I
2021-04-29 07:49:05 +03:00
Vladislav Volkov
c97bb90a91
Nested ITT counters lead to invalid performance measurement results (#5172)
* Compile time enabling or disabling of first inference time counters

* First inference time counters

* Counters for validate_nodes_and_infer_types and check_all_parameters_registered removed from first inference time counters scope

* Code style fix

* Missing macro for CC and invalid domain names

* Code style fix

* Unused function warnings fixed
2021-04-29 07:33:21 +03:00
Katarzyna Mitrus
b3de228206
Transpose ngraph op and reference implementation revision (#5315)
* Extend single layer Transpose tests

* Add more Transpose backend tests

* Update Transpose reference implementation

* Use reference implementation in Transpose evaluate

* Add type prop test with interval dimension

* Move Transpose eval tests to separate file

* Update ie unit test manifest for dynamic cases

* Update evaluate default axes order calculation

* Add Transpose to summarize script

* Add serialize single layer tests

* Add axes order checks in evaluate

* Move ref function default args behaviour to legacy function

* Add new line at EOF

* Remove redundant transpose get_vector helper

* Add set_element_type in transpose evaluate

* Simplify vector convertion

* Add deprecation notice

* Add more tests

* Tests update

* Remove redundant reshape header

* Update unique axes check
2021-04-29 06:58:37 +03:00
Bartosz Lesniewski
39b4b65ffd
Fix Max and Average Pooling op behavior with ceil rounding (#5204)
* Fix Max and Avg Pooling behavior with ceil rounding

* Remove redundant code

* Add backend test to check the problematic case
2021-04-29 06:58:03 +03:00
Tomasz Dołbniak
31b161097d
FIx the incorrect expected exception type (#5396) 2021-04-28 22:15:35 +03:00
Tomasz Dołbniak
3a8eaaaef1
Fetch ONNX and Protobuf in shallow mode (#5442) 2021-04-28 22:03:16 +03:00
Tomasz Dołbniak
36f407dd18
Proper handling of ONNX Squeeze without the axes input (#5425) 2021-04-28 21:59:32 +03:00
Ivan Kochin
7cad047f53
Improve Hybrid CPUs support implementation (#5433)
* Make find_package(TBBBIND_2_4) silent + Remove inheritance from tbb::task_arena for custom::task_arena

* Make my_binding_observer unique_ptr

Co-authored-by: Kochin, Ivan <ivan.kochin@intel.com>
2021-04-28 21:27:11 +03:00
Katarzyna Mitrus
8e87087acf
[Spec] Revision of Sqrt op specification (#5369)
* Update attributes info

* Update math form to render sqrt symbol

* Update input description

* Update output description

* Add new example

* Update description and move math formula

* Style refactor

* Add info about integer rounding and negative values

* Update examples with integer cases
2021-04-28 20:18:12 +03:00
Gabriele Galiero Casay
9bfb394e16
Revise ConvolutionBackpropData operation class (#4906)
* Enhance dynamic shape inference and node checks of validate and infer types method

* Remove type prop unit tests from convolution file

* Add type prop unit tests covering dynamic shape scenario

* Allow integer types in validate and infer types method

* Add output shape inference tests with output_padding attribute

* Fix comparison of integer expressions of different signedness compilation error

* Fix code style
2021-04-28 18:49:00 +03:00
Maxim Shevtsov
80f5fe953b
Openvino hybrid awareness (#5261)
* change the deprecated method to the recent

* first ver of the hybrid cores aware CPU streams (+debug info)

* more debug and fixed sum threads

* disabled NUMA pinning to experiment with affinity via OS

* further brushing of stream to core type logic

* hybrid CPU-aware getNumberOfCPUCores

* adding check on the efficiency

* experimental TBB package (that cmake should pull from the internal server)

* iterating over core types in the reversed order (so the big cores are populated first in case user specified less than all #threads)

* adding back the NUMA affinity code-path for the full validation (incl 2 sockets Windows Server)

* cpplint fix and tabbing the #if clauses for the readbility

* pre-production TBB from internal server

* wrapping over #cores/types

* wrapping over #cores/types, ver 2

* wrapping over #streams instead

* disabling warnings as errors for a while (to unlock testing)

* accomodating new TBB layout for dependencies.bat

* next tbb ver (with debug binaries that probably can unlock the commodity builds, without playing product_configs)

* minor brushing for experiments (so that pinning can be disabled)

* minor brushing from code review

* Updating the SHA hash which appeared when rebasing to the master

* WIP refactoring

* Completed refactoring of the "config" phase of the cpu stream executor and on-the-fly streams to core types mapping

* making the benchmark_app aware about new pinning mode

* Brushing a bit (in preparation for the "soft" affinity)

* map to vector to simplify the things

* updated executors comparison

* more fine-grained pinning scheme for the HYBRID (required to allow all cores on 2+8 1+4, and other LITTLE-skewed scenarios)

TODO: seprate little to big ratio for the fp322 and int8 (and pass the fp32Only flag to the MakeDefaultMultiTHreaded)

* separating fp32 and int8 intensive cases for hybrid execution, also leveraging the HT if the #big_cores is small, refactored. also switched to the 2021.2 oneTBB RC package

* code style

* stripped tbb archives from unused folders and files, also has to rename the LICENSE.txt to the LICENSE to match existing OV packaging tools

* assigning nodeId regradless of pinning mode

* tests OpenCV builds with same 2021.2 oneTBB, ubuntu 18/20

* cmake install paths for oneTBB, alos a ie_parallel.cmake warning on older ver of TBB

* Updated latency case desc to cover multi-socket machines

* adding centos8 OCV with oneTBB build

updating TBB drops with hwloc shared libs added.

* enabled internal OCV from THIRD_PARTY_SERVER to test thru CI..
Added Centos7 notbb OCV build (until g-api get ready for onetbb) to unlock the Centos7 CI build

* separate rpath log to respect one-tbb specific paths

* fixed SEQ code-path

* fixed doc misprint

* allowing all cores in 2+8 for int8 as well

* cleaned from debug printfs

* HYBRID_AWARE pinning option for the Python benchmark_app

* OpenVINO Hybrid CPUs support

* Remove custom::task_arena abstraction layout

* Get back to the custom::task_arena interface

* Add windows.h inclusion

* Fix typo in macro name

* Separate TBB and TBBbind packages

* Fix compile-time conditions

* Fix preprocessors conditions

* Fix typo

* Fix linking

* make linking private

* Fix typo

* Fix target_compile_definitions syntax

* Implement CMake install logic, update sha hash for the tbbbind_2_4 package

* Add tbbbind_2_4 required paths to setup_vars

* Update CI paths

* Include ie_parallel.hpp to ie_system_conf.cpp

* Try to update dependencies scripts

* Try to fix dependencies.bat

* Modify dependencies script

* Use static tbbbind_2_4 library

* Remove redundant paths from CI

* Revert "cleaned from debug printfs"

This reverts commit 82c9bd90c5.

# Conflicts:
#	inference-engine/src/inference_engine/os/win/win_system_conf.cpp
#	inference-engine/src/inference_engine/threading/ie_cpu_streams_executor.cpp
#	inference-engine/src/mkldnn_plugin/config.cpp

* Update tbbbind package version

* fixed compilation

* removing the direct tbb::info calls from CPU plugin, to aggregate everything in the single module (that exposes the higher level APIs)

* Update tbbbind package version

(cherry picked from commit f66b8f6aa6)

* compilation fix

* brushing the headers a bit

* Make custom::task_arena inherited from tbb::task_arena

* change to the latest TBB API, and more debug printfs

* code-style

* ARM compilation

* aligned "failed system config" between OV and TBB (by using '-1')

* macos compilation fix

* default arena creation (to make sure all code-path have that fallback)

* Incapsulate all TBB versions related logic inside the custom namespace

* Move custom layer header to internal scope + minor improvements

* with all NUMA/Hybrid checks now consolidated in the custom_arena, cleaning the ugly ifdefs thta we had

* Introduce new ThreadBindingType + fix compilation

* fixing OMP compilation

* OpenVINO Hybrid CPUs support

* Remove custom::task_arena abstraction layout

* Get back to the custom::task_arena interface

* Add windows.h inclusion

* Fix typo in macro name

* Separate TBB and TBBbind packages

* Fix compile-time conditions

* Fix preprocessors conditions

* Fix typo

* Fix linking

* make linking private

* Fix typo

* Fix target_compile_definitions syntax

* Implement CMake install logic, update sha hash for the tbbbind_2_4 package

* Add tbbbind_2_4 required paths to setup_vars

* Update CI paths

* Include ie_parallel.hpp to ie_system_conf.cpp

* Try to update dependencies scripts

* Try to fix dependencies.bat

* Modify dependencies script

* Use static tbbbind_2_4 library

* Remove redundant paths from CI

* Update tbbbind package version

* Make custom::task_arena inherited from tbb::task_arena

* Incapsulate all TBB versions related logic inside the custom namespace

* Move custom layer header to internal scope + minor improvements

* Introduce new ThreadBindingType + fix compilation

* Fix compilation

* Use public tbbbind_2_4 package

* fixed macos build, corrected comments/desc

* reverted to the default binding selection logic ( to preserve the legacy beh)

* OpenVINO Hybrid CPUs support

* Remove custom::task_arena abstraction layout

* Get back to the custom::task_arena interface

* Add windows.h inclusion

* Fix typo in macro name

* Separate TBB and TBBbind packages

* Fix compile-time conditions

* Fix preprocessors conditions

* Fix typo

* Fix linking

* make linking private

* Fix typo

* Fix target_compile_definitions syntax

* Implement CMake install logic, update sha hash for the tbbbind_2_4 package

* Add tbbbind_2_4 required paths to setup_vars

* Update CI paths

* Include ie_parallel.hpp to ie_system_conf.cpp

* Try to update dependencies scripts

* Try to fix dependencies.bat

* Modify dependencies script

* Use static tbbbind_2_4 library

* Remove redundant paths from CI

* Update tbbbind package version

* Make custom::task_arena inherited from tbb::task_arena

* Incapsulate all TBB versions related logic inside the custom namespace

* Move custom layer header to internal scope + minor improvements

* Introduce new ThreadBindingType + fix compilation

* Fix compilation

* Use public tbbbind_2_4 package

* Apply review comments

* Fix compilation without tbbbind_2_4

* Fix compilation with different TBB versions

* code review remarks

* fix for the NONE pinning code-path under HYBRID_AWAR

* whitespace and cleaning the debug printfs (per review)

* code-review comments

* fixed code-style

Co-authored-by: Kochin, Ivan <ivan.kochin@intel.com>
Co-authored-by: Kochin Ivan <kochin.ivan@intel.com>
2021-04-28 17:42:58 +03:00
Gleb Kazantaev
8413b85b8a
Change ConvertFP32TpFP16 Pass To Use ConvertPrecision (#5378)
* Change ConvertFP32TpFP16 Pass To Use ConvertPrecision

* Pass inference_engine_transformations_EXPORTS to nGraph

* Resolve conflicts

* Pass ngraph_EXPORTS to transformation library

* Remove relative path

* target_compile_definitions for transformations

* TRANSFORMATIONS_API -> NGRAPH_API

* Removetarget_compile_definitions

* Added f32 to f16 switch case

* Code Style Fix
2021-04-28 15:52:23 +03:00
Alexander Zhogov
aef26b962a
Azure CI: Remove MklDnnBehaviorTests (#5351)
* Remove MklDnnBehaviorTests
2021-04-28 14:45:46 +03:00
Elizaveta Gerashchenko
bc5b3c14bd
[IE CLDNN] Generation of undefs optimization (#5158) 2021-04-28 14:35:54 +03:00
Kate Generalova
10f3d7e065
feat: linters for IE Py API, wheel, samples (#5352)
* feat: linters for IE Py API, wheel, samples

* fix indent after auto-formatter

* ignore formatting for argument parsing
2021-04-28 13:52:03 +03:00