Commit Graph

1113 Commits

Author SHA1 Message Date
Maxim Vafin 9dbc71063c
Improve model cutting (#6835)
* Improve model cutting

* If part of model is cut, conversion rules must not run on it

* Add incorrect cut test

* Fix code style

* Fix test

* Fix codestyle

* Do not change op places graph on convert

* Assert output has producer

* Fix code style
2021-07-30 19:42:55 +03:00
Luo Cheng 86bb056dbf
MulticlassNms/MatrixNms: transformations and CPU implementation (#6653)
* init version, need revise: opset7

* add convert testcase

* multiclass_nms support spec

* init version

* matrixnms support spec

* init support for matrix_nms

* impl matirx_nms

* implemented multiclass_nms reference.

TODO: more test cases.

* support dynamic shape in test

* update to spec 0611

* update to spec 0611

* fixes.

* fix: now sort by class_id and score work.

* fix clang check error

* more test cases verified.

* fixes in ref impl.

* attribute nms_eta works

* test cross_batch and output_type i32.

* enable multiclass-nms cpu plugin fallback ngraph

* keep topk typo

* enable matrix-nms cpu plugin fallback ngraph

* support sort_result_across_batch

* Add matrix_nms unit test

* Add cross batch test cases

* fix typo

* move multiclass to opset8

* move matrixnms to opset8

* Reference implementations for MulticlassNms and MatrixNms ops

* fix name conflict

* remove unused var
sort_result_across_batch default set to false

* avoid float overflow

* fix clang check error

* info for mac fail

* change testcase due to unstable sort

* nms add 'normalized' attribute

* multiclass cpu test support 'normalized'

* nms add 'normalized' attribute

* fixes: 1. normalized support. 2. sort by score before keep_top_k inside a batch.

* fixes: 1. normalized support. 2. sort by score before keep_top_k inside a batch.

* fix sort order in matrix_nms

* fix review comments

* add matrix_nms MKLDNN extension layer

* parallel in matirx nms

* separate filtered_box

* separate class_nms result

* parallel in class

* parallel in batch

* partial new nms

* partial remove useless function

* debug & fix

* debug in indexing

* fix test cases

* remove logging

* fix code-style

* fix typo

* add matrix_nms extension

* nms python api

* remove unused testcases

* refactor transformation

* transform dynamic shape to static shape

* Update inference-engine/src/transformations/include/ngraph_ops/nms_static_shape_ie.hpp

Co-authored-by: Ilya Churaev <ilyachur@gmail.com>

* remove register_pass call

* [MKLDNN]migrate matrix_nms to MKLDNNNode

* bug fix in matrix_nms

* padding on matrix_nms

* remove logging

* test case refine

* merged transform_matrix_nms branch

* refine matrixnms testcase

* multiclass nms cpu plugin implement for static shape, rebased on Reference implementations PR

* rebase to new multi-classs transform provided by lc

* Name style algin with matrix-nms

* static shape padding style to batch inside,new unit test method, real classnum shape

* fix format

* fix ci error

* multi-class NMS modification based on PR reviewer opinion: code format, copyright, delete unused include and funciton way

* explicit template instantiation due to mac ci fail

* Yi3/fix review (#16)

* fix coding style

* use parallel_for2d

* fix ci fail

* unify 'copyright 2021'

* mkldnn_multiclass_nms node update based on PR review (#17)

* [MKLDNN] apply suggestion for matrix_nms (#18)

* fix bug

* apply review comments

* apply review comments

* apply review comments

* apply review comments

* skip only Nms test, not MatrixNms MulticlassNms test

Co-authored-by: Zhang Yi3 <yi3.zhang@intel.com>
Co-authored-by: jialipen <cecilia.peng@intel.com>
Co-authored-by: mangguo <mang.guo@intel.com>
Co-authored-by: Ilya Churaev <ilyachur@gmail.com>
Co-authored-by: liubo-intel <bo4.liu@intel.com>
2021-07-30 15:45:44 +03:00
Ilya Lavrenov 518ec79cb0
Updated samples compile options (#6818)
* Don't warn about obsolete cmake usage

* Removed build flags for samples

* Fixed ngraph with -Wpedantic

* cmake for 3rdparty
2021-07-30 13:54:09 +03:00
Zhang Yi 81377a71d0
[FrontEnd]enable PDPD 16 ops conversion Part2 (#6632)
* [FrontEnd]enable 16 ops conversion

* [FrontEnd]fix typo in interpolate

* param support tensor (#3)

* Update hard_sigmoid.cpp (#4)

* Yi3/fix paddle part2

* fix paddle conversion

* ops forward declaration

* use tile instead of broadcast

* Add validation check in dropout (#8)

* fix conflict

* fix code style

* fix transpose2

* use perm size in transpose2

* remove check in transpose2

Co-authored-by: Luo Cheng <cheng.luo@intel.com>
Co-authored-by: Mang Guo <mang.guo@intel.com>
2021-07-30 13:53:39 +03:00
Maxim Vafin 9a36e77f50
Accept stream pointer instead of shared_ptr in paddle frontend (#6807)
* Accept stream pointer instead of shared_ptr

* Fix build

* Fix build tests on centos
2021-07-30 12:58:17 +03:00
Gabriele Galiero Casay c1d8c23d48
Remove deprecated reduce logical reference implementation signatures (#6850) 2021-07-30 12:38:17 +03:00
Mateusz Bencer 44bcc702e8
Fixed problem with model_inputs method in ONNX Editor (#6860) 2021-07-30 10:55:45 +02:00
Ivan Tikhonov bc06279825
Fix clone_function: clone ngraph::Variables (#6804)
* fix clone function

* ngraph codestyle

* fix copy function for assign/read value v3

* add unit test
2021-07-30 10:19:12 +03:00
Maxim Vafin 5920cf849d
Implement paddle frontend methods for partial conversion (#6784)
* Implement paddle frontend methods for partial conversion

* Apply feedback

* Fix codestyle

* Remove normalize implementation and change convert signature for partialModel case

* Apply review feedback

* Apply review feedback

* Fix onnx importer convert signature

* Fix codestyle

* Add test of unsupported op

* Fix code style

* Remove "normalize()" tests

* Fix onnx tests

* Fix build

* Fix merge conflicts
2021-07-30 10:14:18 +03:00
Patryk Elszkowski 0861a5c910
Validate speedup (#6779)
* Add minor speedup changes.

* inline clip

* reduce clip calls

* more Interval::size - move to header

* terminate instead of throwing exception

* back to throw exception when element type was not found

* rename variable
2021-07-30 08:59:36 +03:00
Yury Gaydaychuk 7ab92b5845
[CPU] Adaptive pooling implementation (#6594) 2021-07-29 20:41:24 +03:00
Anastasia Popova e70e7e1e9d
Shell implementation for RandomUniform. (#6782)
* Added shell implementation for RandomUniform.

* Small correction.

* Small correction.

* Corrected wrong type.

* Corrected error message, corrected setters.
2021-07-29 18:19:54 +03:00
Gleb Kazantaev 0a1cad52ab
Avoid Constant data copy inside Reshape constant folding (#6410)
* Avoid Constant data copy inside Reshape constant folding

* Fix Codestyle

* Updated Squeeze, Unsqueeze cf

* Deprecate set_data_shape method

* Fix Pruning
2021-07-29 17:51:25 +03:00
Egor Shulman ab8d046642
[CPU] NormalizeL2 - unsorted axes are not supported (#6602) 2021-07-29 17:30:38 +03:00
Mikhail Nosov 868fad33ab
[MO] Add support to moc_frontend of ":" as delimiter for --input and --output (#6543)
* [MO] Add support to moc_frontend of ":" as delimiter for --input

Additions:
Changed default logic for 'Place::get_in(out)put_port' to return nullptr
Changed default logic for 'InputModel::get_place_by_tensor(operation)_name' to return nullptr

* Corrected comments in code

* Missing empty line

* Clang format fixes

* Fix review comments

* Updated test to verify review comments fixes

* Update unit tests after rebase

* Apply review comments
2021-07-29 13:09:51 +03:00
Mikhail Nosov a95d59014c
Rename "pdpd" frontend to "paddle" (#6842)
* Rename "pdpd" frontend to "paddle"
Also renamed mo_pdpd.py+main_pdpd.py to mo_paddle.py+main_paddle.py

Class names were not renamed

* Update package_BOM.txt
2021-07-29 11:43:07 +03:00
Ilya Churaev 62ed84e880
Avoid copy of data when create Constant from HostTensor (#3388)
* Avoid copy of data when create Constant from HostTensor

* Fixed build
2021-07-28 18:27:27 +03:00
Bartosz Lesniewski 1471095bdb
Revise Less (#6728)
* Revise spec

* Comparison backend test POC

* Split Comparison ops tests into separate files

* remove comparison.cpp, remove unused imports, replace for_each with range based for

* remove unnecessary ngraph:: prefixes

* Fix links in spec

* Add Less to trusted ops list

* Add missing ','

* Use builder in backend tests

* Remove old backend tests for less, equal
2021-07-28 15:36:07 +03:00
Mateusz Bencer dc5f44e929
Integration ONNX Editor with FE API (#6773) 2021-07-27 12:20:39 +02:00
Patryk Elszkowski 7bbf3775bd
initialize NodeBuilder registry by IIFE instead of double lock pattern (#6753) 2021-07-27 07:53:29 +03:00
Szymon Durawa f5fe8550d9
Remove deprecated convolution API. (#6732)
* Remove deprectaed convolution API.

* Apply correct style.
2021-07-27 07:36:10 +03:00
Yury Gaydaychuk e5a990e356
[CPU] RoiPooling handles border proposals correctly (#6199) 2021-07-26 23:35:27 +03:00
Dawid Kożykowski b4ad7a1755
Refactor visitor tests for BinaryElementwiseArithmetic ops (#6667)
* add binary_elementwise file

* change binary_elementwise.hpp to binary_ops.hpp

* migrate mod operation test o typed template test

* add tests for remaining binary ops

* remove comment

* fix formatting to match clang-format

* add RVO-exploit string concatenating andbeautify the code

* add validation for attributes number

* add missing visit_attributes() calls

* add missing 4th param to NGRAPH_RTTI_DEFINITION calls

* fix formatting to match clang-format
2021-07-26 15:49:14 +03:00
Dawid Kożykowski 1a92a69515
Refactor visitor tests for UnaryElementwiseArithmetic ops (#6756)
* remove namespace dependencies from header file

* add RVO-exploit string concatenating

* update acosh test

* update erf test
2021-07-26 15:46:31 +03:00
Ilya Lavrenov 37c619b0b8
Fixed compilation with Intel compiler (#6788)
* Fixed compilation with Intel compiler

* Fixed template containers for VPU

* Fixe one-dnn

* Updated submodule
2021-07-26 12:42:05 +03:00
Evgenya Stepyreva b907c3b84f
set_output_type speedup (#6754)
* set_output_type speedup

* style

* Final optimization

* Removed extra include, removed unnecessary lock_guard

* Typo

* Apply suggestions from code review

Co-authored-by: Mikhail Nosov <mikhail.nosov@intel.com>

* Update ngraph/core/include/ngraph/descriptor/tensor.hpp

Co-authored-by: Mikhail Nosov <mikhail.nosov@intel.com>

Co-authored-by: Mikhail Nosov <mikhail.nosov@intel.com>
2021-07-26 12:00:13 +03:00
Mikhail Nosov ea60879a8b
PDPD: Install generated PDPD test models as 'test' component (#6783)
* Install generated PDPD test models as 'test' component

Needed when test package is installed on another machine which don't have generated models

To search installed models, 'FE_TEST_MODELS' env variable is introduced

* Clang fixes

* Fix PDPD_Places test from latest master
2021-07-26 10:12:26 +03:00
LuweiZhou 0c10950032
Revise erf OP (#6477)
* Revise Erf OP sepc

Signed-off-by: Luwei Zhou <luwei.zhou@intel.com>

* Revise the NGraph Erf OP implment to switch to RTTI.

Signed-off-by: Luwei Zhou <luwei.zhou@intel.com>

* Remove the duplicated Erf in the activation type vector.

Signed-off-by: Luwei Zhou <luwei.zhou@intel.com>

* Add NGraph visitor API test case.

Signed-off-by: Luwei Zhou <luwei.zhou@intel.com>

* Enalbe the Erf visitor API CmakeLists.txt.

Signed-off-by: Luwei Zhou <luwei.zhou@intel.com>

* Revise the Erf OP backend test

Signed-off-by: Luwei Zhou <luwei.zhou@intel.com>

* Migrate to use the template test.

* Add erf type_prop test.

* Update the license

* Unary Visitor test template fix

-Migrate OP Tanh to use RTTI;
-Remove the using namespace in the header file
-Migrate the Swish and Tanh visitor test to use template code


Signed-off-by: Luwei Zhou <luwei.zhou@intel.com>

* Revert "Unary Visitor test template fix"

This reverts commit b686c933d3.

* Update the doc format.

* Update the document format and description.

Signed-off-by: Luwei Zhou <luwei.zhou@intel.com>

* Add Erf OP into the layer test summary list

* Migrate the Erf backend test into template_plugin infrastructure

* Update the Erf supported input type.

* Remove the boolean type support in erf reference implement.

validate_and_infer_elementwise_arithmetic() will fail with boolean type.

* Update the erf test  with all supported types.

* Update with separate namespace of CommonReferenceTest
2021-07-26 07:15:40 +03:00
Ivan Tikhonov 6e8b0e0ea6
pdpd Place: remaining methods, refactoring, unit tests (#6637)
* pdpd Place: remaining methods, refactoring, unit tests

* resolve merge issues

* use references instead of shared_ptr for Var and Op descs

* Add import pdpd fuzz test; To enable collection of pdpd models, cmake NGRAPH_PDPD_FRONTEND_ENABLE key should be set, the models will be generated to pdpd_test_models folder.

* fix ngraph codestyle

* fix review comments

* Add new methods for Place class

* fix implementation, add tests

* Place: Return nullptr instead of throwing an exception

* ngraph codestyle

* revert return nullptr

* fix build

* fix tests

* fix fuzzing tests

* fix fuzzing tests

* fix readme file

* Revert "fix readme file"

This reverts commit d061e69a0d.

* Resolve review comments

* ngraph codestyle

Co-authored-by: Somsikov, Andrey <andrey.somsikov@intel.com>
2021-07-23 15:22:05 +03:00
Mikhail Nosov ac0f3c5271
Install 'paddlepaddle' for Azure-Linux CI (#6764) 2021-07-23 09:14:08 +03:00
Szymon Durawa fa057627ec
Ref implementation mvn revise (#6600)
* Add visitor and backend tests.

* Add reduction_axes to SLTs, serialization and backend tests.

* Update backend tests.

* Move backend tests to template plugin, remove old ones.

* Apply correct format.

* Add BF16 to SLT, add comment regarding deprecated class.

* Remove BF16 precision as it is not supported in windows, no default values for attributes.

* Reuse Tensor from base_reference_test.hpp
2021-07-23 07:47:08 +03:00
Eugeny Volosenkov f328eeced6
MultiSubgraph in nGraph (#6621)
* Add multisubgraph

* Fix format

* Fix clang format

* Fix TensorIterator RTT

* Fix subgraph

* Fix codestyle

* Fix comments

* Fix comments

* Fix coments

* Fix comments

* delete get function

* fix methods

* fix ci

* Fix ci

* fix bugs

* Fix cmake

* Fix ci

* delete virtual function

* delete virtual function

* fix ci

* Fix ci
2021-07-23 07:03:25 +03:00
Maxim Vafin 1ebdcb1d71
Fix reading constants in paddlepaddle frontend (#6755) 2021-07-22 19:21:32 +03:00
Ilya Lavrenov df264e682a
Protobuf lite (#6758)
* Compilation with protobuf-lite for PDPD FE
2021-07-22 19:13:43 +03:00
Mikhail Nosov 4e4442d99e
PDPD frontend - support of protobuf_lite (#6747) 2021-07-22 19:11:02 +03:00
Mateusz Tabaka 22273f8069
[ONNX] Add ONNX specific FrontEnd classes (#6615)
This change implements a subset of FrontEnd API for ONNX:

Changes:
- move onnx_common, onnx_editor and onnx_import to ngraph/frontend/onnx
- introduce new target 'onnx_frontend_ngraph' located in ngraph/frontend/onnx/frontend
- new target implements subset of FrontEnd, InputModel and Place interfaces
2021-07-22 16:26:05 +02:00
Patryk Elszkowski 35fb3f3d7d
Acosh ref impl (#6664)
* minor changes in Op class and add ref impl for acosh

* acosh in new test framework

* add Acosh type test

* add SLT for Acosh

* run more test

* new acosh plugin test

* add visitor test

* fix test utils

* add template test for all supported types in Acosh

* add builder to template tests

* update grn template_plugin test

* update maste to feature branch
2021-07-22 12:59:59 +03:00
Ilya Lavrenov 21e678eb78
Fixed ngraph unit-test compilation with protobuf-lite (#6734) 2021-07-22 11:56:40 +03:00
Mateusz Tabaka 1e1e3bfffd
Fix NormalizeL2Fusion and allow LpNormalization to be fused to Normal… (#5664)
* Fix NormalizeL2Fusion and allow LpNormalization to be fused to NormalizeL2

* apply code format

* use cast_vector<uint64_t>

* use MKLDNNNormalizeL2Node::isSupportedOperation in normalizeL2FusionCallback
2021-07-22 07:14:43 +03:00
Mikhail Nosov aecb2b9693
Static library for ngraph::frontend_manager (#6719)
* Static library for ngraph::frontend_manager

* Static + Shared versions

* Fix CI

* USE_STATIC_FRONTEND_MANAGER macro

* Set USE_STATIC_FRONTEND_MANAGER compile definition as public

* Revert back incorrectly removed line

* Apply more review comments
2021-07-22 02:42:34 +03:00
Ilya Lavrenov 7d85d61083
Fix for cmake 3.21.x (#6722)
* Fix for cmake 3.21.x

* Removed a lot -Wno-* compile options
2021-07-21 11:55:41 +03:00
Jozef Daniecki 226cb952ae
Select operation revision (#6483)
* Add visitor test.

* Add Serialization SLT.

* Add Select-1 to summarize.py.

* Remove select from evaluates map.

* Remove few Select cases from manifest.

* Fix style.

* Refactor CoordinateTransform usage for NUMPY.

* Refactor CoordinateTransform usage for PDPD.

* Migrate backend tests to template_plugin.

* Revert "Fix style."

This reverts commit 8298c90104.

* Add more template plugin tests.

* Fixes for PDPD broadcasting.

* Align Select type prop tests with PDPP broadcasting to new
implementation.

* Remove ngraph:: from types in tests.
2021-07-21 08:13:40 +03:00
Ilya Lavrenov b62d93efff
Enabled code style check for tests (#6724) 2021-07-20 18:59:38 +03:00
Ilya Lavrenov 1a446b49a2
Fixed usage of system protobuf (#6716) 2021-07-20 18:13:22 +03:00
Rafal Blaczkowski e8f07d8b26
Update AZURE - OpenVINO ONNX CI check (#6721)
* experiment

* save

* Undo exeprimental changes
2021-07-20 15:17:53 +03:00
Piotr Szmelczynski c2c6fe59da
Revise sign (#6581)
* update docs

* add sign to intActivationTypes

* add RTTI macro

* update backend test

* add type prp test

* add visitor test

* add visitor and type_prop test to CMakeList

* add sign to constants.py

* delete backend tests and create new reference tests

* style fix

* remoove sign backend test from CMakeList

* create reference test for all supported types

* remove boolean type from evaluate method
2021-07-20 11:22:22 +03:00
Maxim Vafin 960ba48e6f
Rework model loading in FE manager, implement PDPD probing (#6358)
* Rework model loading in FE manager, implement PDPD probing

* Fix build

* Fix build

* Fix build

* Fix unicode

* Fix merge issues

* Fix codestyle

* Read frontends path from frontend_manager library location

* Fix codestyle

* Fix FE dependency

* Fix dependencies

* Fix codestyle

* Check if model file exists

* Revert adding model to lfs

* Add test model

* Fix cmake dependencies

* Apply review feedback

* Revert pugixml

* make getFrontendLibraryPath not public API

* Fix codestyle

* Apply fix from Ilya Lavrenov

* Add FE dependency in legacy tests

* Remove not needed dependency

* Better support Unicode

* Fix build

* Fix build

* Fix build

* Add dependency foe deprecated tests

* Fix dependency

* Fix typo

* Revert adding FE dependency to IESharedTests

* Remove relative paths from frontend unit tests

* Apply review feedback

* Fix typo

* Return allow-undefined, since kmb dependecies fail to link

* Fix merge conflict

* Compare functions in reader tests

* Simplify code to load from variants

* Remove supported_by_arguments from public api

* Fix codestyle

* Fix build

* Compare names in reader tests

* Fix wchar in variant

Co-authored-by: Ilya Churaev <ilya.churaev@intel.com>
2021-07-19 20:10:00 +03:00
Edward Shogulin c3c26b4807
[LPT] Refactoring: PoC (#5226)
* LPT fix for Windows

* LPT fix for Windows

* Remove inference_engine_transformations_EXPORTS

* [nGraph] Register new node in GraphRewrite

* [LPT] nGraph alignment

* [LPT] nGraph alignment: tests

Co-authored-by: Ilya Lavrenov <ilya.lavrenov@intel.com>
2021-07-19 16:48:20 +03:00
Patryk Elszkowski 0d9212683f
FakeQuantize - reference implementation refactor (#6478)
* new implementation of FakeQuantize

* move FakeQuantize backend test to fake_quantize.in.cpp

* enable some test for FakeQuantize

* Add support for PDPD broadcasting and some backend tests

* arm plugin expect less attributes in function call

* try to fix arm plugin build

* try to build arm plugin

* start changing backend test

* add check for attributes number in visitor test

* fix backend test after refactoring

* add default parameter value to runtime::reference::fake_quantize

* Revert "add default parameter value to runtime::reference::fake_quantize"

This reverts commit 9d2c00d967.

* add SLT for FakeQuantize

* remove fesetround

* change `v1` namesapce to `v0` in ref impl

* add FakeQuantize-1 to VERIFIED_OP_REFERENCES

* pass immutable reference to test functions
2021-07-19 12:20:54 +03:00
Ivan Tikhonov 697c52abfe
DeformableConv v8: reference implementation (#6514)
* DeformableConv v8:reference implementation

* ngraph codestyle

* update reference iplementation

* Disable tests on GPU

* fix unit tests

* Update DeformConv single layer tests

* fix serialization tests
2021-07-19 06:15:34 +03:00