Commit Graph
446 Commits
Author SHA1 Message Date
Vladislav Golubev fb3d785c06 [Snippets] [CPU] FMA Fusion (#8066) 2023-02-15 12:58:37 +04:00
Alexandra Sidorova d73ee9e59b [CPU] Optimize number of pass::Validate calls in postLPT, postSnipppets and CPUSpecificOpSet pass managers (#15596) 2023-02-15 09:08:12 +01:00
Xiuchuan ZhaiandMaksim Kutakov 36cb32a8f5 [CPU] Optimize shape_infer time of matmul (#15601)
* optimize shape infer of matmul

* remove some redundant check

* fix some comments

* fix some comments

* Update src/plugins/intel_cpu/src/nodes/matmul.cpp

fix an implicit bug

Co-authored-by: Maksim Kutakov <maxim.kutakov@gmail.com>

* Update src/plugins/intel_cpu/src/nodes/matmul.cpp

optimize by using OV RTTI instead of dynamic_pointer_cast

Co-authored-by: Maksim Kutakov <maxim.kutakov@gmail.com>

---------

Co-authored-by: Maksim Kutakov <maxim.kutakov@gmail.com>
2023-02-15 03:07:39 +01:00
Zhang Yi e4551b66c4 remove unused value (#15670) 2023-02-13 16:36:13 +04:00
Tingqian Li b9a1b45a82 [CPU] Optimize reorder inside tensor_iterator (#14689) 2023-02-13 11:26:40 +01:00
Zhang Yi 166566a777 [CPU]Enable pad with runtime begin/end/value (#15146) 2023-02-13 11:01:16 +04:00
Vladislav Golubev 67396661a9 [CPU][DEBUG_CAPS] Transformations dump: added CPU opset serialization for XmlBin format (#15565) 2023-02-10 14:01:09 +01:00
Pawel RaaszandEvgenya Stepyreva 264cb18619 Review pad class for shape inference aspects (#15524)
* Review for partial shape and label propagation

* Review template shape_infer for Pad

* Add evaluate upper/lower, label
- preserve partial value on inputs pads_begin, pads_end

* Fix compilation errors

* Fix pads_begin, pads_end compare

* Minor shape infer assertion corrections

---------

Co-authored-by: Evgenya Stepyreva <evgenya.stepyreva@intel.com>
2023-02-10 13:35:47 +01:00
Vladislav Golubev 1b29914c07 [CPU][DEBUG CAPS] Build fix (#15602)
* [CPU] TransformationPipeline: returned debug config

* Added a macros for variables which can be unused
2023-02-09 22:49:30 +04:00
Katarzyna MitrusandEvgenya Stepyreva 76817f56c2 [ShapeInference] CTCGreedyDecoderSeqLen shape infer improvements (#15501)
* Shape infer improvements

* Add setter for merge repeated attribute

* Use new shape_infer in validate and infer types

* Add more type prop tests

* Add shape infer tests

* Align variable names in tests

* shape_infer call refactor

---------

Co-authored-by: Evgenya Stepyreva <evgenya.stepyreva@intel.com>
2023-02-08 12:24:48 +00:00
Pawel Raasz c3083589bd Review reverse class for shape inference aspects (#15426)
* Check partial shape and label propagation

* Add template shape_infer implementation
2023-02-08 16:10:51 +04:00
Ilya Lavrenov 1f3e469c5e Added -Wall for Clang and GCC (#15513)
* Added -Wall for Clang and GCC

* Fixes

* Don't use /J

* Fixed warnings

* Fixed warnings

* More fixes

* Fixed for MSVC

* Fixed more warnings on Windows

* Suppressed some warnings in template plugin

* Update src/tests/functional/plugin/shared/include/behavior/plugin/caching_tests.hpp

* Added suppression for PT FE

* Suppressed warnings in TF FE

* Suppressed warnings on Core unit tests

* Suppress warnings in python

* Suppressed Windows warning for 3rd party modules

* Suppresed one more warning
2023-02-08 15:01:00 +04:00
Katarzyna Mitrus d94dae79d8 [ShapeInference] CTCGreedyDecoder shape infer improvements (#15474)
* Add setter for ctc_merge_repeated

* shape infer improvements

* Add type prop tests

* Add cpu shape infer tests

* Tests refactor
2023-02-08 11:41:14 +04:00
Ilya Churaev 26108b1b67 Deprecate clone_model API, use model->clone() instead of (#15482)
* Deprecate clone_model API, use model->clone() instead of

* Renamed clone_nodes function

* Fixed exception
2023-02-07 23:53:17 +04:00
Nikolay Shchegolev 188dda668f [CPU] Fix sporadic SIGFAULT in GridSample. (#15009) 2023-02-07 17:57:34 +04:00
Mang Guo 9e83b081f4 Add gather lpt transformation (#14597)
* Add gather lpt transformation

* Add per-channel gather lpt dequantization support

* Fix review comments

* Add GPU test case

* Fix clang-format error gpu case  build error

* Fix comments

* Fix clang-format check fail

* Update docs

* Fix comments

* Add Gather opset1 quantization support
2023-02-02 16:13:52 +01:00
Nikolay Shchegolev d167f4c733 [CPU] MEMC loading failed RuntimeError: There should be only one inst… (#15380)
* [CPU] MEMC loading failed RuntimeError: There should be only one instance of RegistersPool per thread.

* Fixes as per comments.
2023-02-02 16:10:21 +04:00
Chenhu Wang 8fc4c2c6e1 [CPU]FC shape infer with an CPU shapeInfer object (#15092)
* with an shapeInfer object

* more efficient vector creation
2023-02-01 15:35:15 +01:00
Katarzyna Mitrus 407590cfc2 [ShapeInference] GatherTree shape infer improvements (#15399)
* Shape infer improvments

* Add type_prop label and interval dims tests

* Update shape_infer tests

* Use new shape_infer

* Revert headers changes

* Rename test file
2023-01-31 14:04:19 +01:00
Katarzyna Mitrus f342e5d208 [ShapeInference] Improve GatherND shape inference (#15378)
* Add shape_infer function for GatherND

* GatherND shape infer improvements

* Align test to trigger correct error message

* Add new and improve GatherND type_prop tests

* Update tests to use ov namespace

* Add GatherND common shape_infer tests

* Init shape infer tests for not common cases

* Tests refactor

* Add default ctor tests

* Add more test cases

* Register shape_infer for GatherND V5 and V8

* Enable more tests and print params

* Move GatherNDTestParams
2023-01-31 14:12:12 +04:00
Pawel Raasz 4ce3e9a88d Review CTCLoss class for shape inference aspects (#15375)
* Review ctc loss operator for
- partial shape and label propagation
- template implementation of shape_infer
- update/extend tests

* Use namespace ov in ctc loss operator
2023-01-31 14:10:30 +04:00
Pawel Raasz 3a8646215f Review roll class for shape inference aspects (#15295)
* Review Roll label and interval shape propagation

* Review Roll shape_infer template implementation

* Fix compilation issues
2023-01-31 14:05:23 +04:00
Vladislav Golubev d1397b7b48 [LPT] Rank limitations removed (#14785)
* [LPT] LayerTransformation: removed legacy rank checks

* [LPT] Added test cases with 1D and 6D ranks & existing tests corrected
2023-01-31 00:26:59 +00:00
Oleg PipikinandIlya Churaev 73c9a3dcf2 Remove ENABLE_INTEL_CPU (#15134)
* Remove global ENABLE_INTEL_CPU macro ddefinition.Add mlocal definition for some source files where it is used

* Fix1

Co-authored-by: Ilya Churaev <ilya.churaev@intel.com>
2023-01-27 07:43:16 +00:00
Pawel Raasz c1b208b2a5 Review ReverseSequence class for shape inference aspects (#15128)
* Review reverse sequence for:
- partial shapes and labels propagation
- template implementation of shape infer
- refactor shape_infer to use it when op created with default ctor

* Remove friend shape_infer from reverse sequence op
2023-01-27 07:44:03 +01:00
0513a79a79 Tensorflow Lite frontend (#14977)
* Infrastructure for tflite

* Removed submodule flatbuffers

* Added flatbuffers submodule. Fixed version to v22.12.06 aka acf39ff

* Move headers back

* Flatbuffers integration

* Small fixes

* Started parsing the Model

* flatbuffer changes

* decoder_flatbuffer changes

* Lite Input Model -- not needed as of now but looks cool

* Rolled back inherritance from ov::frontend::tensorflow::InputModel

* Results are not treated as outputs, but its ok

* Fix missplaced input vs output

* Refactor

* Load model op-by-op. Frontend API finalized

* Debugging still, there are prints here and there. Decoder is not sane

* Convolution with all attributes is translated and quantization is applied for inputs and constatants. TODO: quantize intermediate tensors, separate decoder specific logic?

* Float ssd and posenet models are showing good accuracy

* Need to refactor but work flawlessly

* Telemetry and lightweight model cutting

* Code style and test changes. Extensions supported

* Quantization and style

* Style refinements

* Move onednn back

* New portion of operations enabled

* TFLite FE doesn't inherrit TF FE

* Moved files to another directory

* Rename header op_table.hpp to common_op_table.hpp for all files in src/frontends/tensorflow_common/src/op/

* Removed visability macroses

* CMake changes

* Unit-test execution in .ci

* Update labeler.yml

* Codeowners

* Style check and fix

* Static Build arrangement

* Addressing the comments

* install common headers to previous place

* New approach with public decoder and graph_iterator

* New approach with public decoder and graph_iterator

* Move GraphIterator back

* Comments addressed

* Comments adressed

* Preliminary TF FE README.md changes

* Added target_compile_definitions OPENVINO_STATIC_LIBRARY for static build

* Fixed conflicts and added TF to common places

* Frontends use only openvino::core::dev API

* Merged common tensorflow changes and made code build and work on selective number of models

* Style

* Rollback unnecessary changes from Tensorflow FE

* Rollback unnecessary changes from Tensorflow Common

* Minor refactor

* cmake minor refactoring

* Mixed commit

* Style and merge fix

* Low hanging fruit operations

* Fix windows build

* Refactor quantization parameters representation

* license compliance. approved by OS PDT

* copyrights in generic file

* dependabot

* labeler

* Unit Test to be triggered in CI

* cmake variables naming. corrected copyright years in copyrights/generic file

* library renamed in .ci/ calls

* Copyright year update

* Set openvino-tf-frontend-maintainers as owner of /src/frontends/tensorflow_lite/

* Fixed flatc corss-compilation

* Cleaned flatbuffers header usage

* Nitpicks solved

* Update cmake/templates/OpenVINOConfig.cmake.in

* Compile with flatbuffers headers

* Fixed "which is prefixed in the source directory"

* Fixed typo in flatbuffers cmake

* Removed flatbuffers submodule

* Added fork submodule

* Fixed static build

* Fixed cross-compilatio

* Fixed -Wshadow warning

* Fixed warning on Windows

* Use only headers from flatbuffers library

* Added LTO and fixed compilation errors on Windows

* Fixed warnings in tensorflow_common

* Move ctors implementation to cpp file

* Added information about new frontends to common FEm part

* Temporaryily disable warnings

* Fixed code style using clang-format

* Fixed Windows

* reverted changes in onnx

* Revert changes in onnx_common

* Removed pragma once frm cpp

Co-authored-by: missjane <estepyreva@gmail.com>
Co-authored-by: Ilya Lavrenov <ilya.lavrenov@intel.com>
2023-01-27 06:27:59 +04:00
Pawel Raasz a7fa66c52d Review eye class for shape inference aspects (#15039)
* Review propagate interval shapes and labels

* Review eye template shape inference

* Add partial value and label propagation on inputs
columns and rows

* Include array in eye shape inference

* Fix compilation issues

* Remove local label_t alias from eye tests
2023-01-26 15:03:35 +01:00
Pawel Raasz b44b4fcf2c Refactor shape inference factory (#15004)
* New static shape inference iface using ov::Tensors
- Add new shape inference factory
- Add helpers to create inference factory map entries
- Create map for IShapeInferCommon instead of if else switch
- Create new map for IStaticShapeInfer

* Re-factor tile shape inference to use new iface

* ov::default_label_evaluator uses ov::Tensor now

* Improve cmp::lt for mixed types unsigned and float

* Fix cpp lint issue

* Update using tile shape_inference in GPU plugin

* Do tile shape infer before repeats lock deletion

* Fix label type conversion to element type

* Rename shape infer transformation
to type utils and change namespace from ov::sh_infer_tr to ov::util

* Update shape inference utilities

* Add unit test for safe compare of values

* Update shape infer factory to be a template
and use unordered map

* Remove from_label_type as lebel_t can be used
by element:from<>
2023-01-26 07:44:13 +01:00
Ilya Lavrenov 0970bc8fcf Moved legacy library and deprecated tests to GNA (#15244) 2023-01-25 11:36:22 +04:00
Tomasz Jankowski 988847f559 Transformation component transition to OV namespace (phase 4) (#13558)
* Use openvino pass graph_rewrite

* Replace use of ngraph::pass to ov::pass

* Remove ngraph::pass aliases

* Update after rebase

* Fix post merge conflicts

* Apply code style

* Apply code style

* Remove bypassing inclusion

* Apply code style
2023-01-25 01:02:35 +03:00
Katarzyna Mitrus c72c6ba331 [ShapeInference] Improvements of GatherElements shape inference (#15264)
* GatherElements shape infer improvements

* Add new tests

* Update test error message
2023-01-24 10:20:28 +01:00
Pawel Raasz 9ee80d67b7 Review topk for shape inference aspects (#14890)
* Review TopK for:
- label and dimension propagation
- partial value and label propagation
- preserve partial value and labels
- add evaluate upper, lower and label

* TopK v1 use shape infer instead fallback
- update static shape inference tests

* TopK shape_infer return output shapes

* Add new way to get tensor data as shape
with custom data processing
- Update tail op to use new function
- Update topk op to use this function
- Add test for negative k

* Add missing include

* Fix compilation issues

* Add support for i4 and u4 element types in
get_raw_data_as

* Fix signed and unsigned and compile warnings

* Remove constexpr from InTypeRange::operator()

* Use forward reference for functor
- minor corrections in InTypeRange class

* Use shape)infer in evaluate
- fix TopK v3 ctor for input data validation

* Fix transformation tests to use correct type for k

* Fix f16 handling in get_raw_data_as

* Correct topk bounds evaluators

* Topk detect overlap for same size dimensions
As op specification not guarantee correct order of
several elements same value

* Remove evaluate bounds
required investigation if required then will be provided

* Remove bound evaluation leftovers

* Update get const data in slice ops
2023-01-24 12:38:08 +04:00
Yuan Hu ea776672ba [CPU] Allow external blob to be reallocated (#12029) 2023-01-24 09:30:07 +04:00
Egor Duplenskii 66c0dcc742 [CPU][DEBUG_CAPS] Fix Windows build (#15234)
Ensure cross-platform _VA_ARGS_ behavior
2023-01-23 17:17:39 +04:00
Roman Kazantsev 0d201376df [Tests] Fix rest of NumPy deprecated types (#15245)
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>

Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
2023-01-21 11:17:52 +00:00
Ivan Novoselov ffcb83deba [Snippets] FP32 MHA postcommit fixes (#15180) 2023-01-19 14:06:39 +04:00
Vladimir Paramuzov 2201a5f83e Added common ov::execution_mode hint (#15048)
* [GPU] Added common exec mode hint and gpu support

* Add ov::inference precision and update usages. Deprecate ov::hint::inference_precision property

* [GPU] Execution mode tests and fixes

* Fixed code style

* Moved execution_mode test to common. Fixes for python API

* Remove deprecations for hint::inference_precision and just keep both

* Fix test
2023-01-18 20:13:00 +04:00
Alexandra Sidorova 6525dd4727 [Snippets][CPU] Added FP32 MHA tokenization support (#14327) 2023-01-18 16:59:21 +04:00
Katarzyna Mitrus fd6640b6eb [ShapeInference] GridSample shape infer review (#15102)
* Add more type_prop tests for interval dims and labels

* Add setter for grid sample attributes

* Merge grid sample batch dims

* Add StaticShapeInferenceTest for GridSample

* Fix label test

* Use OpStaticShapeInferenceTest fixture in test
2023-01-18 12:39:05 +00:00
Ilya LavrenovandYuan Xu c4eeecfec5 Remove myriad plugin (#15131)
* Removed Intel MYRIAD plugin

* Removed Intel MYIAD from CI files

* Removed Intel MYRIAD from cmake folder

* Removed MYRIAD, HDDL from samples

* Removed MYRIAD, HDDL from scripts folder

* Removed MYRIAD from bindings folder (C and Python API)

* Removed MYRIAD tests

* Removed MYRIAD from tests folder

* Removed MYRIAD from tools folder

* Removed HDDL (VAD), MYRIAD (NSC2) from documentation

* Fixed build for AUTO unit tests

* Fixed clang code style

* Fixed comments and issues

* removed MYRIAD from AUTO tests

* Disabled MULTI tests in CI

* Update docs/OV_Runtime_UG/auto_device_selection.md

Co-authored-by: Yuan Xu <yuan1.xu@intel.com>

* Update docs/get_started/get_started_demos.md

Co-authored-by: Yuan Xu <yuan1.xu@intel.com>

* Update docs/OV_Runtime_UG/deployment/local-distribution.md

Co-authored-by: Yuan Xu <yuan1.xu@intel.com>

Co-authored-by: Yuan Xu <yuan1.xu@intel.com>
2023-01-18 15:19:44 +04:00
Pawel Raasz a1203b931a Review slice for shape inference aspects (#14611)
* Review slice ope for
- Interval dimension and label propagation
- add template shape inference with static shape test
- check preserve partial values on inputs
- check upper/lower evaluate

* Add bounds evaluation for inputs start, stop

* Share code between slice and strided slice
Use same function to calculate elements in step

* Add array includes

* Add to int64_t strides size

* Fix windows compile warnings

* Fix shape inference for unknown axes

* Remove empty lines in slice shape inference

* Correct slice static shape tests

* Use arrays of const chars to store literals
Remove and update exception messages for strided slice

* Fix slice test and apply review comments

* Fix compilation issues

* Fix ellipsis when there is not begin

* Fix get element type for const inputs

* Insert optional axes as const or dynamic param

* Remove temp vectors for dimensions calculation

* Revert set optional input in ctor

* Fix forward slicing for negative start and MAX end
2023-01-18 14:40:53 +04:00
Ilya Lavrenov c29f111717 Enabled Windows ARM64 build using MSVC cl compiler (#15132)
* Fixed Windows Arm64 build

* Fixed linker warnings in docs

* Fixed Windowd ARM build

* Reverted changes in docs

* Added OpenVINO level macro to define CPU architecture

* Properly remove xbyak from reference kernels optimizations

* Added documentation for cmake functions

* Fixed samples build

* Added installation dir for host protoc

* Fixed installation stage for host_protoc

* Added build dir

* Fixed compilation on Apple

* cççç

* Fixed clang code-style

* Tely on CPU id from xbyak

* Fixed build

* Fixed compilation on mac

* Fixed compilation
2023-01-17 17:29:00 +04:00
Eddy Kim 14a7e443d0 Adding missed conversion logics between layout and string (#15103)
* added missed layout to string conversion

* added an unit test for layout_from_string

* added missing spaces around =

* replaced 95 with SCALAR

* moved layout_to_string into a new file

* changed to parametrized test
2023-01-16 17:32:30 +04:00
Ilya Churaev 0c9abf43a9 Updated copyright headers (#15124)
* Updated copyright headers

* Revert "Fixed linker warnings in docs snippets on Windows (#15119)"

This reverts commit 372699ec49.
2023-01-16 11:02:17 +04:00
Vitaliy Urusovskij 32e74f339e RGB to Gray ConvertColor Preprocessor (#13855)
* Add RGB to Gray ConvertColor Preprocessor

* Revert some changes

* Additional updates

* Polish RGBToGray implementation

Move Conv computations to FP32 and add Round for INT cases

* Extend tests - add comparison with OpenCV

* ClangFormat

* Return commented code

* Make `pre_post_process` tests parametrized

* Add shape calculation for RGB ColorFormat. Make RGB->GRAY 4D only

* Update ov_core_unit_tests

* Update ov_template_func_tests

* Clang Formatting

* Fix python preprocess tests

* Fix warning: truncation from 'double' to 'float'
of RGB->GRAY weights

* Fix flake8 issues

* Fix `convert_color_asserts` test

* Treat GRAY as NHWC

* Resolve review issues with tests

* Fix Py preprocess tests after rebase

* Clang Format

* Add case if C < 0

* Add reference link to RGB coefficients

* Add doxygen documentation for ColorFormat enum
2023-01-13 13:50:30 +04:00
Oleg Pipikin 0ba3a97277 Use unique file names in tests (#15014)
* Add common test api to generate unique test file names

* Use unique file names in ir frontend tests

* Use unique file names in plugin tests

* Fix code style

* fix1

* fix2

* Add unique file names for other tests

* Fix code style 2

* fix3
2023-01-13 12:35:30 +04:00
River Li 8c84faeecd Add ov::loaded_from_cache checking for CompileModelLoadFromMemoryTest (#15030)
* Add ov::loaded_from_cache checking for CompileModelLoadFromMemoryTestBase

* Skip gna in skip_tests_config
2023-01-11 09:45:11 +03:00
River Li 246a287c34 Add new compile model api to support hash model memory (#14543)
* Add new compile_model api for ONNX RUNTIME OV EP

Allow compile_model() accept model/weight data.

* Update minor place

* Cache model if possible

* Compute hash based on model_xml and model_weight

* Update typo

* Change hash key computation for model's weights

* Resolve test case issue

* Use tensor replace blob for hash computation

* Fix hash computation isssue and add more test cases

* Fix a build issue caused by data format
2023-01-10 16:32:34 +08:00
Tingqian Li 29b8c9e7af [CPU] Add GraphContext & EnforeceBF16 for sub-graphs (#14695) 2023-01-09 15:28:48 +04:00
Sun Xiaoxia 4b80b4850c [CPU] Moved streams number computation to CPU plugin from IStreamsExecutor::Config (#14502) 2023-01-03 14:05:56 +00:00