Commit Graph
744 Commits
Author SHA1 Message Date
Katarzyna Mitrus 7851020cd3 [ONNX] Enable ONNX ROIAlign-16 (by ov::v9::ROIAlign) (#11633) 2022-05-11 11:43:15 +02:00
Tomasz Dołbniak 53e62d2ac6 ONNX OperatorsBridge - non-static version (#11578) 2022-05-09 12:58:51 +00:00
Mateusz Bencer 99c04c0d6a additional validation of places (#11480) 2022-05-09 07:24:07 +00:00
Jan Iwaszkiewicz 6eb9c11d7e [PYTHON] Infer calls improvement (#11498) 2022-05-06 08:58:00 +02:00
Katarzyna Mitrus 50287625d7 [Eye-9] Python API for Eye-9 (#11552) 2022-05-05 16:16:36 +02:00
Jan Iwaszkiewicz 8d221d1e06 Add lower bound for wheel package (#11595) 2022-04-28 13:02:46 +02:00
Katarzyna Mitrus 5bedbbe05d [ONNX] Add Scan operator to ONNX Frontend (#11053) 2022-04-12 10:35:15 +02:00
Ilya Lavrenov c2703c81f6 Don't install nlohmann_json_schema_validator for samples (#11446)
* Try to improve gflags

* Try to improve gflags: part 2

* Tried to use dependencies on system

* Use nlohmann_jsonConfig from system

* Enabled nlohmann_json from system

* Improvements

* handle system gflags in developer package

* Simplifications

* Simplify dependency management

* Corrected package names

* Fixed subgraphsDumper configure stage

* Try to fix rhel8

* Try to fix macosx

* Fixed VPUX build

* Fixed aliasing issues

* Suppress some wanrings

* export gflags when build it

* Fixed some LTO

* Try to fix Mac

* revert

* use gflags as private dependency

* Aligned targets in developer package

* Fixed frontends tests build on U20 with LTO

* PAssed

* Don't use pkg_search_module(zlib ..) during cross-compilation

* Removed unused variables

* Fixed finding of zlib during cross-compilation

* CVS-83529

* Use nothreads_static

* Fixed python
2022-04-05 19:16:32 +00:00
Jan IwaszkiewiczandAlexey Lebedev 8e9fb18882 [PYTHON] Properties API, improvements of OVAny (#11389)
* WIP for POC

* Bulkwork

* Clean up current solution

* Extend Core methods

* Refactor Any python converts

* add submodule to runtime

* Add initial tests

* Fix copy-paste error

* Extend test

* Improve casting options and move common parts to utils

* Add newline

* Fix properties, remove class approach, move to all string Properties API

* Fix codestyle

* Fix pystyle

* ResolveTODOs, better align and extend python api

* Add extended test cases

* Fix properties in one of compile_model overload.

Co-authored-by: Alexey Lebedev <alexey.lebedev@intel.com>

* Update src/bindings/python/tests/test_inference_engine/test_properties.py

Co-authored-by: Alexey Lebedev <alexey.lebedev@intel.com>

Co-authored-by: Alexey Lebedev <alexey.lebedev@intel.com>
2022-04-05 18:01:36 +03:00
Przemyslaw Wysocki 55497a12d8 [PYTHON] Add method to_dtype() to Type class (#11433)
* Add Type method to_dtype()

* Clang formatting

* Add Type __init__ binding

* Add Type constructor

* Add numpy types classes to test
2022-04-05 14:00:02 +03:00
Ilya Lavrenov 4ad20fb53f Use system dependencies (#11419)
* Try to improve gflags

* Try to improve gflags: part 2

* Tried to use dependencies on system

* Use nlohmann_jsonConfig from system

* Enabled nlohmann_json from system

* Improvements

* handle system gflags in developer package

* Simplifications

* Simplify dependency management

* Corrected package names

* Fixed subgraphsDumper configure stage

* Try to fix rhel8

* Try to fix macosx

* Fixed VPUX build

* Fixed aliasing issues

* Suppress some wanrings

* export gflags when build it

* Fixed some LTO

* Try to fix Mac

* revert

* use gflags as private dependency

* Aligned targets in developer package

* Fixed frontends tests build on U20 with LTO

* PAssed

* Don't use pkg_search_module(zlib ..) during cross-compilation

* Removed unused variables

* Fixed finding of zlib during cross-compilation
2022-04-05 04:47:22 +03:00
Alexey Lebedev 6eaa15745a [PYTHON API] Tensor.data property for low precisions + packing (#11131)
* rebase old branch with master

* Fix doc style

* fix test

* update tests

* Add missed param

* Rewrite docstring for tensor and refactor set_input_tensors test

* update python exclusives

* keep compatibility

* remove notes about slices

* fix code style

* Fix code style
2022-04-01 12:04:04 +03:00
Ilya Churaev 80739700ff Added clone method for ov::Model (#11390)
* Added clone method for ov::Model

* Changed python API
2022-04-01 10:52:31 +03:00
Anastasia Kuporosova dd54cb9c17 [Python API] Remove old api class from the new api (#10470)
* [Python API] Remove old api class from the new api

* start working on refactoring of OVAny

* fix tests

* fix code-style

* remove tuple test

* fix test

* fix omz hash

* one more overload

* fix pyfloat

* move from_ov_any to utils

* code-style

* move function from common to utils
2022-03-31 21:57:05 +03:00
1efb0a034f [PYTHON API] release GIL (#10810)
* AsyncInferQueue nogil update + refactoring

* nogil in compiled model

* nogil in Core

* fix refactoring

* nogil in infer_request

* add tests

* Fix code style

* update test with incrementing reference counting

* try to fix code style

* fix code style

* release gil in reshape and preprocessing

* make args optional in test

* fix code style

* add docs about GIL

* try to link doc string with docs

* Apply suggestions from code review

Co-authored-by: Jan Iwaszkiewicz <jan.iwaszkiewicz@intel.com>

* Fix docs

* docs refactoring

* Apply review comments

* Fix code style

Co-authored-by: Jan Iwaszkiewicz <jan.iwaszkiewicz@intel.com>
Co-authored-by: Anastasia Kuporosova <anastasia.kuporosova@intel.com>
2022-03-31 16:12:48 +03:00
f45ca99de6 [PYTHON] Add ov::clone_function bindings (#11331)
* Add clone_function bindings

* Add clone_function binding tests

* Debugging changes

* Minor changes

* Code style

* Add an assert

* Update src/bindings/python/tests/test_ngraph/test_basic.py

* Update src/bindings/python/src/pyopenvino/graph/model.cpp

Co-authored-by: Jan Iwaszkiewicz <jan.iwaszkiewicz@intel.com>
Co-authored-by: Anastasia Kuporosova <anastasia.kuporosova@intel.com>
2022-03-31 12:14:51 +03:00
Anastasia Kuporosova d107cec39f [Python API] Update names in Model class (#11348)
* [Python API] Update names in Model class

* fix code-style

* remove from_capsule in the new API
2022-03-31 00:33:57 +03:00
Anastasia Kuporosova 4c7050f6a9 [Python API] Improve configuration files (#10960)
* [Python API] Improve configuration files

* fix config files

* update setup.cfd + change quotes

* move all codestyle checks to py_checks job

* update requirements_test.txt

* fix  codestyle according to flake-docstring

* fix

* fix mypy

* apply comments
2022-03-30 20:26:36 +03:00
Alexey Lebedev c8720f122d [PYTHON API] lifetime test for CompiledModel and extension (#11120)
* Add test for lifitime and extensions

* Remove ExtendedModel
2022-03-30 19:43:07 +03:00
Anastasia Kuporosova 9fa5150d71 [Python API][Docs] Fix references for several classes (#11251) 2022-03-30 13:29:30 +03:00
Gleb Kazantaev 866f006a83 Transformations Python API (#10971)
* Keep changes

* Update tests

* Keep changes

* Cleanup

* Add predicates support; new pattern ops; new tests

* support for public passes; added tests

* Fix compilation warning

* Fix code style

* Added docstrings; code cleanup

* Update python API tests

* Fix build on Windows

* Revert back pass registration logic

* Fix flake8 errors

* Update docstrings; fix utils.hpp

* Cleanup

* Cleanup

* Fix flake errors

* Fix mypy

* Skip mypy for passes
2022-03-29 11:41:23 +03:00
Ilya Lavrenov 19d0e5ba52 CMAKE: IE_VERSION => OpenVINO_VERSION (#11242)
* IE_VERSION => OpenVINO_VERSION

* Reverted installation of python unconditionally
2022-03-28 19:32:21 +03:00
Mikhail Nosov 8bfde58fd9 [Core] Improve performance for 'ov::Model::add_output' (#11052)
* Improve performance for 'ov::Model::add_output'

On first call of `add_output(tensor_name)` all available tensor names are cached.
Next calls take nodes from cache which significantly reduces complexity.
Cache is invalidated if topological cache is not valid or cache points to incorrect output (no tensor name of this node anymore)

The same caching is done for 'add_output(op_name, output_index)'

Tests:
- Verifies that adding outputs to all nodes has linear complexity O(N), not O(N^2)
- Verifies cache invalidation scenarios

* Fix python tests

* Update topological cache after add_output(Output<Node>) by adding result to the end of cached ops

* Add 'm_shared_rt_info' to 'result node just for consistency (there is actually no scenario which may fail due to absence of this info for Result

* Added test cases to verify that names cache should be cleared on refresh of 'get_ordered_ops'
2022-03-25 12:17:41 +03:00
Sergey Lyubimtsev fae1c27657 Add missed dependencies for OpenVINO Runtime wheel build (#11193)
* Disable IncrediBuild

* Add dependencies for frontends

* new line

* Add dependencies for frontends

* Enable IncrediBuild
2022-03-25 11:42:40 +03:00
Anastasia Kuporosova 8118147a96 [Python API] Fix documentation for Core API (#11187)
* [Python API] Fix documentation for Core API

* fix style
2022-03-24 19:56:45 +03:00
Artur Kulikowski 3674ec403f Update ONNX to version 1.11.0 (#11046) 2022-03-23 13:52:33 +01:00
Alexey Lebedev 3de9189d50 [core][python] ov::serialize (#10945)
* add ov::serialize

* create python binding

* update python tools

* use ov::serialize in benchmark app

* remove serialize from python offline_transformations

* fix import

* revert pot

* update docs

* apply review comments

* add const

* make bin path optional

* Add docs

* add compare test
2022-03-23 11:44:00 +03:00
Yury Gaydaychuk 1b9c58125c Checking in setShape() method if blob was preallocated moved to the case of increased shape (#11009)
* allow setshape for preallocated  blob in the case of non-increased memory size

* codestyle

* test cases added

* pytest aligned
2022-03-22 09:35:37 +03:00
Mateusz Bencer fe406d1606 Cpp fix of python segfault, reverted pybind workaround (#10749)
* test fix of segfault

* styles applied

* added keep_alive to pybind

* remove redundant code

* fix json tests

* review remarks

* introduced correct path to dlls in CI

* removing passing path via env variable

* introduced cpp solution

* remove keep alive

* review remarks

* remove explicit removing model

* removed shared_objects from ir frontend

* core test updated

* unified approach to handle extensions by frontends

* added nullptr check

* Revert "added nullptr check"

This reverts commit 666f5e4489.

* Revert "unified approach to handle extensions by frontends"

This reverts commit bf85ac24a6.

* m_extensions declaration in Frontend

* added assert
2022-03-18 16:29:46 +03:00
Mikhail Nosov 4b3dd808df [First Inference] Read time improvements via using 'mmap/munmap' (#10907)
* Performance improvement for constant creation

The issue is that 'are_all_data_elements_bitwise_identical()' is called every time in Constant constructor, and it potentially checks all buffer which is O(N) complexity.
While it is needed only if client uses 'get_all_data_elements_bitwise_identical'

Solution:
- Defer calculation until first call of 'get_all_data_elements_bitwise_identical'
- Store calculated value in mutable class member to reuse it on next calls of 'get_all_data_elements_bitwise_identical'

Test verifies both cases:
a) that constant creation with shared memory data (now O(1)) is significantly faster than creation+bitwiseCheck O(N)
b) Than once calculated, value is taken from cache, which is significantly faster than re-calculation

* fix clang-format

* Stash - Linux implementation

* Windows mmap implementation + unicode

* Clang for windows

* removed debug print

* Add handling of empty bin file

* fix windows includes

* Fix python test

* Unit tests
Fix for Constant with size > 4GB

* Fix review comments
2022-03-17 17:16:06 +03:00
Dawid Kożykowski cf80156fcc Expose Output object bindings to Python (#10743) 2022-03-16 18:31:38 +01:00
Mikhail NosovandIlya Churaev 72fe6082ea [Preprocess] InputTensorInfo::set_from implementation (#10839)
* InputTensorInfo::from implementation

If user's application already has `ov::runtime::Tensor` object created,
it will be possible to reuse basic characteristics for input (shape, precision) from tensor using InputTensorInfo::from method

* Rename 'from' to 'set_from' as  in Python 'from' keyword is used for import modules
Python bindings: from ov.Tensor and from numpy array

* Style fix (quotes)

* Apply suggestions from code review

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

* Fix code style

* Use set_from in hello_classification CPP sample

Co-authored-by: Ilya Churaev <ilyachur@gmail.com>
2022-03-14 18:02:51 +03:00
Anastasia KuporosovaandIlya Lavrenov d0b4cae2f8 [Python API] move util under utils (#10923)
* [Python API] move util under utils

* fix importing

Co-authored-by: Ilya Lavrenov <ilya.lavrenov@intel.com>
2022-03-14 14:40:28 +03:00
Mikhail NosovandIlya Lavrenov 96f954c704 [Preprocessing] Crop preprocessing support (#10805)
* Crop preprocessing support

Note: instead of 'ov::Coordinate' simple std::vector<int> is used because Coordinate don't support negative dimensions

Added unit tests, template reference tests, cpu and gpu tests

* Added python bindings
Fix review comments

* Fixed python code style

* Fix thresholds

* Fix python style

Co-authored-by: Ilya Lavrenov <ilya.lavrenov@intel.com>
2022-03-14 13:32:27 +03:00
Anastasia KuporosovaandIlya Lavrenov 23604ca28c [Python API] Update doc style (#10708)
* [Python API] Update doc style

* apply comments

Co-authored-by: Ilya Lavrenov <ilya.lavrenov@intel.com>
2022-03-11 19:18:20 +03:00
Sergey Lyubimtsev dd076264eb add pre-release description for wheels packages (2) (#10813)
* add pre-release description for wheels packages

* refactoring

* lines

* Revert "lines"

This reverts commit 01a74dc168.

* linters

* linters

* nighly revision of docs URL
2022-03-11 11:09:17 +03:00
Mateusz Bencer d1630c9ac1 Fix problem with segfault during using extension feature via Python (#10650) 2022-03-03 11:22:42 +01:00
Mikhail Nosov 5e023ebdd9 Fix issue with default arguments in preprocessing python bindings (#10702)
* Fix in Preprocessing python bindings - add correct default arguments for:
    - PreProcessSteps::convert_element_type
    - PostProcessSteps::convert_element_type
    - InputTensorInfo::set_color_format

Otherwise, python users must always specify optional params

E.g. instead of writing `tensor().set_color_format(ColorFormat.RGB)` python users will have to write `tensor().set_color_format(ColorFormat.RGB, [])`

* Corrected 'help' output

* Exposing 'openvino.runtime.Type.undefined' and use it in 'convert_element_type' documentation
2022-03-01 17:32:36 +03:00
Ilya LavrenovandAlexey Suhov 6b067bc0ed Fixed install on Apple (#8302)
* Fixed Apple install

* Update path to libs in setupvars.sh

* Fix IE_CPACK_RUNTIME_PATH for Apple

* Fix wheels packaging

Co-authored-by: Alexey Suhov <alexey.suhov@intel.com>
2022-03-01 16:56:15 +03:00
Anastasia Kuporosova 0f409ccea9 [Python API] Fix typo in method name (#10707) 2022-03-01 16:11:57 +03:00
Mikhail Nosov 173f328c53 Checking compatibility between 'pyopenvino' and 'libopenvino' (#10668)
* Checking compatibility between 'pyopenvino' and 'libopenvino' on 'import phase'

This fix is to prevent undefined behavior when user loads OpenVINO from python, but pyopenvino loads different version of 'libopenvino'
This may happen if user has several releases installed and played around PATH/PYTHONPATH environment variables.

In such case, user may have undefined behavior - application may crash in the middle of the usage or use incorrect release.

Fix checks build versions for pyopenvino and ov::get_openvino_version. If mismatch occurs, exception is thrown.

This logic is disabled if user has built OpenVINO locally, experienced developers probably know what they're doing, so if version has 'custom_'  prefix - this logic is disabled

* Removed custom logic for CI_BUILD_NUMBER, it is reused from already included version.cmake

* Use addVersionDefines macro
2022-02-28 17:04:59 +03:00
Mateusz Tabaka 4a8b142fef [PYTHON] fix importing lstm_sequence for opsets >= 5 (#10637)
* [PYTHON] fix importing lstm_sequence for opsets >= 5

* update compat opsets
2022-02-28 17:00:51 +03:00
Jan Iwaszkiewicz 54f39294de [PYTHON] Fix style in python doc strings (#10606)
* Fix style in python doc strings

* New line quotes
2022-02-25 13:02:04 +03:00
Anastasia Kuporosova 5bb8f77c3f [Python API] Remove get/set_config methods from the PyOV (#10587) 2022-02-22 16:51:41 +03:00
Alexey LebedevandSergey Lyalin a3004e7d80 [PYTHON API] reshape helper (#10402)
* Add reshape helper

* add dimension(range)

* Add partial_shape helper

* Fix code style

* fix comments

* Split reshape on several overloads

* Fix code style

* correct exception

* remove range support

* fix code style

* Add exception

* Dimension from str, PartialShape from str, reshape(str) support

* Apply review comments

* Add default init for shape

* Add PS syntax examples

* Remove pshape parsing from benchmark_app

* Update src/bindings/python/src/pyopenvino/graph/model.cpp

Co-authored-by: Sergey Lyalin <sergey.lyalin@intel.com>

* Update src/bindings/python/src/pyopenvino/graph/model.cpp

Co-authored-by: Sergey Lyalin <sergey.lyalin@intel.com>

* Apply suggestions from code review

Co-authored-by: Sergey Lyalin <sergey.lyalin@intel.com>

Co-authored-by: Sergey Lyalin <sergey.lyalin@intel.com>
2022-02-22 14:48:55 +03:00
Egor Duplensky 3f56438d06 [CPU] Align return types handling for all the new API parameters (#10363) 2022-02-22 12:42:24 +03:00
Jan Iwaszkiewicz 206442fb19 [PYTHON] Add OV Types support to parameter and constant from opsets (#10489)
* Add OV Types to parameter and constant node factory, refactor tests and error handling

* Fix name mismatch in docstring

* Fix docs and hints
2022-02-21 12:45:55 +03:00
Alexey Lebedev 5671ca2cf5 add test (#10531) 2022-02-19 20:19:28 +03:00
Katarzyna Mitrus f52f129ed8 [Python API] Improvement of dynamic reshape error message in compatibility ie (#10495)
* Add test_reshape_dynamic to tests compatibility

* Catch OverflowError on dynamic dimension reshape
2022-02-18 14:23:10 +03:00
Ivan Tikhonov ade4c6c7f9 OpExtension: fix framework attributes handling (#10445)
* Fix attribute handling in OpExtension, add unit tests

* add missed file

* fix warning

* fix warning

* rename convert_from_py_object method to py_object_to_any, fix PEP8

* fix PEP8

* delete redundant include dir, fix includes
2022-02-17 17:42:12 +03:00