* 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
* 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
* [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
* 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'
* 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
* 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>
* 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
* 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>
* 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
* Use tensor names instead of friendly names, handle one output tensor to several Result ops case
* fix python tests
* fix python test
* fix incorrect merge
* remove redundant files
* fix variable names generation, fix python test
* Apply review comments
* fix python test
* Delete _extension suffix in file names; add extension.hpp header to include all extensions
* add extension.hpp file to include all extensions
* codestyle
* Added compatibility check of layout with partial shape
E.g. layout "NC" in not compatible with PartialShape{1,3,224,224}
Check is added:
- For parameter set_layout
- For parameter set_partial_shape
- For result set_layout
- Checked also compatibility for all results after 'validate_and_infer_types'
* Fix incorrect tests
* Fix of more incorrect tests
* Removed couple of obsoleted error-handling tests - these are catched now on earlier stages
Co-authored-by: Ilya Lavrenov <ilya.lavrenov@intel.com>
* [Python API] Rename configuration API + update tests/tools
* keep old api for compatibility
* add deprecation warnings
* apply comments to query sample
* remove convert to pyobject
* use Any instead of string
* update tests
* update set_property
* fix sample
* update test + try-except for pot
* add docstrings
* fix codestyle for pot
* [Python API] Remove offline transformations from old python api
* [Python API] Move wheel folder to the python dir
* codestyle files
* [Python API] Move old python bindings
* move api
* one more codestyle
* fix install stage
* remove unexisting file from gitignore
* flake8 style
* try to fix jenkins
* undo comments
* return variable
* remove cpack
* fix after merge
* try to fix version
* fix test
* remove debug info
* version of python
* try to fix pyversion
* update tests
Co-authored-by: Alexander Zhogov <alexander.zhogov@intel.com>
* Squash commit: implement Conversion extensions
* Refactor PaddlePaddle FrontEnd
* Codestyle
* FrontEnd,InputModel,Place base classes -> abstract, renamed model file
* Fix unit tests
* fix unit tests
* ngraph:: to ov::
* Rename frontends dir to frontend
* fix merge conflicts
* Fix ConversionExtension
* get rid of NamedInputs/Outputs in TF FE
* Rename paddlepaddle to paddle; pdpd to paddle
* add missing file
* codestyle
* Remove local change
* paddlepaddle -> paddle for azure configs and .md files
* fix package name, fix config files
* Fix win build
* Revert Broadcast/AutoBroadcast changes
* codestyle
* fix FronEnd class
* fix ngraph_cpp_api.config
* fix incorrect merge, codestyle
* fix conversion extension
* conversion extension
* codestyle
* merge master
* fix build
* refactoring; revert broadcast/autobroadcast changes
* codestyle
* fix MacOS config
* resolve merge conflicts
* refactor includes
* register ConversionExtension in FrontEnds
* move get_op_type to base NodeContex class
* set op_translator map in ctor of Paddle FE; fix unit tests
* update unit tests; codestyle
* codestyle
* preliminary version of conversion extension in pybind
* conversion extension
* get_attribute_as_any method for NodeContext
* move get_attribute methods to NodeContext base class, rename get_ng_input to get_input
* add missed file
* Implement ov::Any getter in ONNX NodeContext
* fix py bindings
* Add update ConversionExtension unit tests, add SO unit tests, fix TF FE
* fix segfault on destructor
* fix NodeContext interface, fix unit tests
* set different names for ConversionExtensions in unit tests
* fix PaddleFuzzy tests
* fix Paddle Fuzzy tests
* revert changes in generate_slice.py
* fix codestyle
* fix pybindings
* revert local changes in generate_slice.py
* delete duplicate exceptions.hpp
* Refactoring: fix names according to convention
* pybinding for NodeContext, FrontEnd, ConversionExtension; fix unit tests; implement new unit tests
* Refactoring
* fix the case when a new converter rewrites existed one; delete unnecessary NodeContext from pybindings; use CreatorFunctons from the base class in ConversionExtension; update unit tests
* Revert local change
* PythonAPI: fix get_attribute method; fix get_input method; implement support of dtype and default attributes
* Fix py unit tests: add support for vector<ov::element::Type> as attribute
* resolve review comments
* fix unit tests
* move extension_holder to openvino/frontend/extension folder
* fix build on mac os
* temporary disable cast from vector<bool> to investigate issue on mac os
* Resolve review comments
* Resolve review comments
* Use dev API for .so extension
* Link frontends to pyopenvino as separate targets
* Temporary enable tf fe installation
* ignore PEP8 E402 for init files, set correct directory for py modules
* revert local changes
* Fix deadlock in pybind GIL; fix Win build; fix PEP8
* fix PEP8
* Add a return type annotation
* fix builds; fix ON/OFF switcher for ENABLE_OV_xxx_FRONTEND cmake options
* Fix the issue with ifdefs on WinOS; fix the issue related to pybindings and static c++ object
* fix python unit tests
* fix static build on WinOS
* Retrigger CI builds
* Fix static build on Windows
* fix static build on Windows again
* Retrigger CI
* delete unused includes; add a comment about issue on MacOS
* fix missprint
* resolve review comments
* fix missprint
* resolve review remarks
* Resolve review comments
* win win wheels build
* resolve review comments
* Python bindings - test for telemetry extension
This also ensures that actual 'Telemetry' object containing callbacks is still alive even there is no explicit Python objects holding it
* Fix pylint
* fix clang-format
* Use std::string for static map instead of py::str
Probable reason is that this static map is destroyed after 'pybind' module is destoryed itself, thus py::str can't be cleaned up properly
* Added test via 'subprocess' execution of separate file
* [PYTHON] Add python APIs for loadNetwork and compile_networt without device name
CVS: https://jira.devtools.intel.com/browse/CVS-75249
Change-Id: Ia28e35f4ee66fc8fc5997b5bafe1b159670f9a21
Signed-off-by: River,Li <river.li@intel.com>
* Fix clang issue
Change-Id: I9988b16863af0e3883e99369f124cd05761d3210
* Fixed positional arguments issue
Change-Id: I6c3aa98bb693a619fa54fd6e96cf5eb89cdb9369
* Fixed 2 blank lines issue
Change-Id: I7f2afd7ebb80867a69d0c3ac9a6d4a38d95edb12
* Set AUTO as default device if no device name is set
Change-Id: Ic8646b12af0a2ab2fec6a07f5a12d460dcf781d7
* Resolve comments from code reviewer
Change-Id: Ia47faeb48937096e41e22ac59fbd88ec82cc6733
* [Python API] Rename offline_transformations in the new api
* remove comments
* one more place to rename
* fix mo building
* fix after merge
* fix for pot import
* [Common FrontEnd] Implement ChangePlaceholderType transformation with OldApiMap
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Add ChangePlaceholderType pass into frontend normalize
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Add a comment about the transformation
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix build issue
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Apply code review comments: remove ngraph namespace rountine, etc.
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Remove use of extra Node object in set_old_api_map call
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Create separate pass for legacy nGraph transformations for MO with new frontend
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix build for ieFuncTests
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix build issue with namespace conflicts
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Revert "Fix build issue with namespace conflicts"
This reverts commit 50a189f4e5.
* Move legacy transformations to ngraph namespace
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix build issue with unresolved MOCLegacyTransformation
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Adjust code to new OldApiMap API
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Resolve merge conflicts
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix build issue
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Do not set legacy type for parameter in case user defined type
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Calculate model layout based on 'tensor' layout and convert steps
Previously, 'model layout' is set to '...' by default,
thus no shape conversion happened when tensor layout is set to 'NHWC', then there was explicit convert_layout "NCHW"
Now "model layout" is calculated based on tensor layout and conversion steps:
Examples:
1) Tensor: NHWC, Convert: NCHW. Result: NCHW
2) Tensor: NHWC, Convert: 0312. Result: NCHW
* Initial move of tensor data calculation
* Moved 'impls' to new file
* Postprocessing + unit tests
* clang-format fix
* Added more details to preprocessing nodes
- Mean/Scale - will print mean/scale values
- Convert type - will print type
- Convert layout - will print destination layout
- Convert color - will print destination color
It is needed to troubleshoot the problems. If error occurs, message will not display last op's target shape/layout/type
* Add python bindings
* update tests
* Added memory type to dump if set
* Code style fix
* unity build fix
* Dump tensor if only memory type is set
* Added debug print
* Fix Param->Result case
Previously, layout was set by preprocessing set to old parameter as well
This is incorrect because in case of exception layout info will not be reverted
In this case old Result pointed to old Parameter and was able to preserve runtime info
After fixing of this, case Param->Result was broken if revalidation is not triggerred
Fix is to detect 'Result' as a consumer of some parameter and force revalidation in this case
* Revert occasionally committed line
* And one more line
* Squashed commit of previous work
* Fix mock tests
* clang
* Fix rebase errors
* remove unnecessary changes
* One more finding
* Copy ov::Model runtime info as well
* Fix review comments
* Commit missing file
* Copy m_shared_object when cloning model
* removed copy_shared_objects and use clone_model(model, NodeMap) as a friend for ov::Model
* Added OPENVINO_API to forward declaration
* add OPENVINO_API to friend function declaration
* Remove some legacy targets
* Replace some targets
* Removed inference_engine_plugin_api dependency
* Minor comment for developer config
* Fixed include paths
* Small fixes for static build
* Try to fix build pyopenvino
* Fixed comments
* Try to fix build
* Include OpenVINODeveloperPackage inside InferenceEngineDeveloperPackageConfig
* Try to fix GAPI tests
* Introduced OV developer package config
* Remove new targets from old configs
* Fixed python build
* Removed OpenVINO_SOURCE_DIR from developer config
* add support for f16 and bf16 for outputs_to_dict
* create test for f16
* add test for infer new request return type
* fix infer return type test
* update Type import
* update asserts in infer_new_request_return_type
* fix import in test_infer_request
* clean test file
* style fix
* Refactor ONNX,IR,Common FrontEnds
* Rename frontends dir to frontend
* Rename frontend_manager, frontend_defs -> manager, defs; move Place, InputModel to src for Paddle FE
* remove exports for ir/input_model
* fix unit tests
* Fix unit tests
* revert ONNX_API/IR_API defines
* move manager.hpp to frontend dir
* delete common folder; rename defs to visibility; fix includes
* revert local changes
* codestyle
* fix build: set correct includes
* fix includes
* fix build; resolve review comments
* fix install paths
* correct installation folder for onnx_import
* use IE_THROW in ir frontend
ONNXFrameworkNode had it own copy of shared_ptr<Graph> so in convert phase,
it can be used to produce real ngraph nodes (by graph->make_ng_nodes(..)).
But Graph also keeps ONNXFrameworkNodes in its cache and in consequence
its own shared_ptr, which is causing a dependency cycle.
This change removes shared_ptr<Graph> from ONNXFrameworkNode class
and moves it to decoded function runtime info, so Graph is in a single
place now and its lifetime ends when decoded function is destroyed.
* Renamed ov::Function to ov::Model
* Fixed all for macos
* Fixed build
* Fixed build
* Revert changes in GPU plugin
* Fixed ngraphFunctions
* Fixed all for mac
* Fixed new test
* Fixed if for Windows
* Fixed unit tests and renamed Function in python API
* Fixed code style
* Fixed import
* Fixed conflict
* Fixed merge issues
* Alignment of OV and ONNX models outputs naming
* Python tests adaptation to new naming rules
* New output naming rules
* Output name retrieval adaptation (tensor iterator node)
* Copying of tensor names during output replacement
* Multiout multinode subgraphs handling in the importer
* Proper replacement tensor naming
* Model zoo test runner adaptation
* Backwards compatible python tests runner adaptation
* If node adaptation
* Adaptation to changes in master
* Deprecation warning suppression
* Imports fix in compatibility tests
* If node adaptation to the new naming
* MaxPool python tests re-enabled
* ONNX Identity elimination adaptation
* XFAIL for the Identity op test
* Support for Param->Result models and indentity op
* Fix of the ONNX Indentity handling
* The test that fails only on windows temporarily disabled
* ONNX tensor names test adaptation
* Code cleanup
* Code formatting
* Obsolete helper removal
* One more spot where output name helper should be used
* PyApi fix for tensors with multiple names
* Don't set friendly names for unnamed ONNX nodes
* Revert "Don't set friendly names for unnamed ONNX nodes"
This reverts commit 92c7ac59b5.
* Missing dot...
* And now the mypy nonsense...
* Use get_any_name in Loop
* New way of naming result nodes in ONNX FE
* Preprocessing API - base classes
Includes API definition for trivial mean/scale operations (which don't require layout)
Mean/scale with 'layout' support will be done under separate task together
with Layout
Current test code coverage: 100%
* Python bindings for base preprocessing API
* remove pre_post_process directory from ngraph/core
* remove files from ngraph/python dir
* move pyngraph pre_post_process files from ngraph/python to runtime
* remove pre_post_process test from CMakeList
* move include to the header
* update include path for pre_post_process
* style fix
* bind InputTensorInfo::set_layout
* cleaned test_preprocess
* fix test expected output
* remove duplicate test
* update description of set_element_type
* fix style
* move preprocess from pyngraph to pyopenvino/graph
* update test_preprocess imports and remove unnecessary test
* remove duplicate import
* update custom method
* update test
* update test
* create decorator that changes Node into Output<Node>
* create function that cast Node to Output<Node>
* update test_preprocess to use decorator for custom function
* change _cast_to_output -> _from_node
* move frontend folder to pyopenvino
* rename includes and add compile options
* include frontend to pyopenvino
* move __init__.py
* move tests
* remove mock from tests_compatibility
* rename import module
* Fix code style cpp
* refactor a few lines
* style fix
* update few lines in mo
* add tests fro scale and mean with vector input
* style fix
* add docstring for custom_preprocess_function
* bind InputInfo network method
* style fix
* Add pyopenvino to dependencies
* bind OutputInfo
* fix description of preprocess submodule
* fix style
* update copyright year
* Fix mock
* update docstring
* bind OutputTensorInfo
* bind OutputNetworkInfo and InputNetworkInfo
* bind ColorFormat and ResizeAlgorithm
* clean imports
* fix typo
* add PostProcessSteps to init
* bind PreProcessSteps
* create additional tests
* Fix mo test
* remove module local
* fix code style
* update comment
* fix return type
* update docs
* fix code style
* change ngraph.Type to ov.Type
* fix typo
* move _from_node to node_output.hpp
* add read_model from buffer
* update imports
* add new line
* remove bad quotes
* update imports
* style fix
* add new line
* rename functin args
* remove Type import
* update tests
* style fix
* test clean
* remove blank line
* update PrePostProcessor init and build methods
* create test with model update tests with new PrePostProcessor init and build
* # Conflicts:
# inference-engine/ie_bridges/python/src/openvino/offline_transformations/offline_transformations_api.pyx
# inference-engine/ie_bridges/python/src/openvino/offline_transformations/offline_transformations_api_impl.cpp
# inference-engine/ie_bridges/python/src/openvino/offline_transformations/offline_transformations_api_impl.hpp
# inference-engine/ie_bridges/python/src/openvino/offline_transformations/offline_transformations_api_impl_defs.pxd
# inference-engine/tests/ie_test_utils/common_test_utils/ngraph_test_utils.cpp
# inference-engine/tests/ie_test_utils/common_test_utils/ngraph_test_utils.hpp
# model-optimizer/mo/moc_frontend/serialize.py
# thirdparty/gflags/gflags
# thirdparty/gtest/gtest
* Stash
* move preprocess module from openvino.impl to openvino
* fix building
* fix code style
* try to move MO to use new api
* Intermediate commit
* try to move MO to use new api
* Test pybind11 custom holder for Preprocessing types (InputInfo and PreProcessingSteps)
* Initial code for source_target layout handling for preprocessing
Initial implementation of reverse input channels
* Use input's tensor names instead of friendly names
* Skeleton for guessing layouts and clearing it after preprocessing
* updated package_BOM.txt
* Use reference_wrapper for preprocess bindings
* Update tests
* Layout::find_permutation - support of dynamic layouts
Covered case for 'trivial convert' where no permutation is needed
It is needed for Model Optimizer for logic which will guess model's layout, like "?c??"
* Stash
* add bindings to I420_SINGLE_PLANE and I420_THREE_PLANES
* remove init from all classes except PrePostProcessor and add RGBX and BGRX to ColorFormat enum
* Guess layout so that existing mean/scale tests passed
* update test name
* Draft to guess layout for 'reverse_input_channels'
* More unit tests (error cases)
* pylint & flake8
* pylint - ignore import error
* Stash
* Moved preprocessing to 'back' folder
* More tests
* Update package_BOM
* Support layout_values with no names
Support layout set for 'outputs'
Tests
* Export more enum names from nrgaph
* Basic --layout parsing
* removed debug prints
* Further updates after rebase
* Update imports
* Removed part from 8829
* Fix imports in test code
* Minor cosmetics
* Don't guess 'C' if layout is already set by model
Expose 'Layout::empty' method
* Style fix
* Apply review comments
Restricted 'heuristics'
C++: Added 'fp16', 'fp64' support to mean/scale
* Applied review comments
* Added some dynamic test cases
* Move call of 'apply_preprocessing' to 'serialize.py'
* Unnecessary change
* Added more comments to code
Co-authored-by: pszmel <piotr.szmelczynski@intel.com>
Co-authored-by: Alexey Lebedev <alexey.lebedev@intel.com>
Co-authored-by: bszmelcz <bartosz.szmelczynski@intel.com>
Co-authored-by: Anastasia Kuporosova <anastasia.kuporosova@intel.com>
Co-authored-by: y <ilya.lavrenov@intel.com>
Co-authored-by: Vafin, Maxim <maxim.vafin@intel.com>
* Implement MO part for DetectionOutput-8
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Implement nGraph part for DetectionOutput-8
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Implement deduction of a number of classes method
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix build
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Implement nGraph tests to check shape inference for DetectionOutput-8 with deduction of num_classes
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Implement attributes tests for DetectionOutput-8
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Remove DetectionOutput-1 from opset8
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Add python bindings for DetectionOutput-8 and tests
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Implement downgrading and upgrading transformations for DetectionOutput
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Implement tests for downgrading and upgrading transformations for DetectionOutput
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Adopt existing reference for DetectionOutput-8
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix DetectionOutput-8 reference
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Add tests for DetectionOutput-8 reference
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Finish resolving merge conflict
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix python bindings after re-structuring
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix BOM package list
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix multibox_detection_test
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix python bindings for DetectionOutput-8
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Insert blank line between summary and description for python binding
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Apply review comments: identation, for loop
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix formatting in python bindings
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix supported_attrs for DetectionOutput from opset1
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Add missed imports for python if_op
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Apply feedback and fix Win build
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Use the same test suite name for test mixture
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix transformation tests
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Recover BWDCMP_RTTI for legacy use and remove unused variables in tests
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Remove unused variables in type_prop tests
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Recover legacy referenceDetectionOutput constructor
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix python binding for DetectionOutput
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* include api changes
* include api changes for executable_network
* Create InferVec container
* update infer method
* update infer methods in ie_api
* update runtime to work with dict
* update infer_engine test to work with infer returning dict
* remove inferMap container
* add return type to infer and infer_new_request in ie_api
* add auto to infer loops
* fix typo
* change OrderedDict to dict
* change infer methods return type to dict
* update infer methods to return py::dict
* style fix
* create helper function outputs_to_dict
* remove InferMap and InferVec
* remove unused imports
* add const to outputs
* add get_result method
* add test for get_results
* style fix
* add reference to outputs_to_dict parameters
* remove blank line
* fix style
* change get_results method to result property
* code fix in ie_api
* add f16 and bf16 support to outputs_to_dict function
* update the way of receiving keys from dict
* update the way of key receive in test_core
* add test for reslts attribute for async infer
* remove out of date comment
* add view(int16) to bf16 and f16 in outputs_to_dict() function
* Preprocessing API - base classes
Includes API definition for trivial mean/scale operations (which don't require layout)
Mean/scale with 'layout' support will be done under separate task together
with Layout
Current test code coverage: 100%
* Python bindings for base preprocessing API
* remove pre_post_process directory from ngraph/core
* remove files from ngraph/python dir
* move pyngraph pre_post_process files from ngraph/python to runtime
* remove pre_post_process test from CMakeList
* move include to the header
* update include path for pre_post_process
* style fix
* bind InputTensorInfo::set_layout
* cleaned test_preprocess
* fix test expected output
* remove duplicate test
* update description of set_element_type
* fix style
* move preprocess from pyngraph to pyopenvino/graph
* update test_preprocess imports and remove unnecessary test
* remove duplicate import
* update custom method
* update test
* update test
* create decorator that changes Node into Output<Node>
* create function that cast Node to Output<Node>
* update test_preprocess to use decorator for custom function
* change _cast_to_output -> _from_node
* style fix
* add tests fro scale and mean with vector input
* style fix
* add docstring for custom_preprocess_function
* bind InputInfo network method
* style fix
* bind OutputInfo
* fix description of preprocess submodule
* fix style
* update copyright year
* bind OutputTensorInfo
* bind OutputNetworkInfo and InputNetworkInfo
* Bind exec core ov (#50)
* Output const node python tests (#52)
* add python bindings tests for Output<const ov::None>
* add proper tests
* add new line
* rename ie_version to version
* Pszmel/bind infer request (#51)
* remove set_batch, get_blob and set_blob
* update InferRequest class
* change InferenceEngine::InferRequest to ov::runtime::InferRequest
* update set_callback body
* update bindings to reflect ov::runtime::InferRequest
* bind set_input_tensor and get_input_tensor
* style fix
* clen ie_infer_queue.cpp
* Bind exec core ov (#50)
* bind core, exec_net classes
* rm unused function
* add new line
* rename ie_infer_request -> infer_request
* update imports
* update __init__.py
* update ie_api.py
* Replace old containers with the new one
* create impl for create_infer_request
* comment out infer_queue to avoid errors with old infer_request
* update infer_request bind to reflect new infer_request api
* comment out inpuit_info from ie_network to avoid errors with old containers
* Register new containers and comment out InferQueue
* update infer request tests
* style fix
* remove unused imports
* remove unused imports and 2 methods
* add tests to cover all new methods from infer_request
* style fix
* add test
* remove registration of InferResults
* update name of exception_ptr parameter
* update the loops that iterate through inputs and outputs
* clean setCustomCallbacks
* style fix
* add Tensor import
* style fix
* update infer and normalize_inputs
* style fix
* rename startTime and endTime
* Create test for mixed keys as infer arguments
* update infer function
* update return type of infer
Co-authored-by: Bartek Szmelczynski <bartosz.szmelczynski@intel.com>
* fix get_version
* fix opaque issue
* some cosmetic changes
* fix codestyle in tests
* make tests green
* Extend python InferRequest
* Extend python Function
* Change return value of infer call
* Fix missing precisions conversions in CPU plugin
* Rework of runtime for new tests
* Fixed onnx reading in python tests
* Edit compatibility tests
* Edit tests
* Add FLOAT_LIKE xfails
* bind ColorFormat and ResizeAlgorithm
* clean imports
* fix typo
* [Python API] bind ProfilingInfo (#55)
* bind ProfilingInfo
* Add tests
* Fix code style
* Add property
* fix codestyle
* Infer new request method (#56)
* fix conflicts, add infer_new_request function
* remove redundant functions, fix style
* revert the unwanted changes
* revert removal of the Blob
* revert removal of isTblob
* add add_extension from path
* codestyle
* add PostProcessSteps to init
* bind PreProcessSteps
* create additional tests
* fix win build
* add inputs-outputs to function
* update infer queue
* fix code style
* Hot-fix CPU plugin with precision
* fix start_async
* add performance hint to time infer (#8480)
* Updated common migration pipeline (#8176)
* Updated common migration pipeline
* Fixed merge issue
* Added new model and extended example
* Fixed typo
* Added v10-v11 comparison
* Avoid redundant graph nodes scans (#8415)
* Refactor work with env variables (#8208)
* del MO_ROOT
* del MO_ROOT from common_utils.py
* add MO_PATH to common_utils.py
* change mo_path
* [IE Sample Scripts] Use cmake to build samples (#8442)
* Use cmake to build samples
* Add the option to set custom build output folder
* Remove opset8 from compatibility ngraph python API (#8452)
* [GPU] OneDNN gpu submodule update to version 2.5 (#8449)
* [GPU] OneDNN gpu submodule update to version 2.5
* [GPU] Updated onednn submodule and added layout optimizer fix
* Install rules for static libraries case (#8384)
* Proper cmake install for static libraries case
* Added an ability to skip template plugin
* Added install rules for VPU / GPU
* Install more libraries
* Fixed absolute TBB include paths
* Disable GNA
* Fixed issue with linker
* Some fixes
* Fixed linkage issues in tests
* Disabled some tests
* Updated CI pipelines
* Fixed Windows linkage
* Fixed custom_opset test for static casr
* Fixed CVS-70313
* Continue on error
* Fixed clanf-format
* Try to fix Windows linker
* Fixed compilation
* Disable samples
* Fixed samples build with THREADING=SEQ
* Fixed link error on Windows
* Fixed ieFuncTests
* Added static Azure CI
* Revert "Fixed link error on Windows"
This reverts commit 78cca36fd2.
* Merge static and dynamic linux pipelines
* Fixed Azure
* fix codestyle
* rename all methods in this class to snake_case
* some updates
* code style
* fix code style in tests
* update statistics reporting
* update filling inputs
* change ngraph.Type to ov.Type
* fix typo
* save work
* save work
* save work
* compute latency in callback
* save work
* Fix get_idle_request
* save work
* fix latency
* Fix code style
* update AppInputInfo
* add iteration to PatrialShape
* fix rebasing
* bind result::get_layout()
* correct mistakes
* fix setup
* use parameters/results instead inputs/outputs
* move _from_node to node_output.hpp
* add read_model from buffer
* update imports
* revert package struct
* add new line
* remove bad quotes
* update imports
* style fix
* add new line
* Fix preprocessing
* rename functin args
* set NCHW layout to image as default
* Fix input fillings
* remove Type import
* update tests
* style fix
* test clean
* remove blank line
* Add tensor_shape
* fix comments
* update PrePostProcessor init and build methods
* create test with model update tests with new PrePostProcessor init and build
* Change filling inputs
* fix preprocessing
* basic support dynamic shapes
* fix legacy mode
* rename ie to core
* fix cpp code style
* fix input files parsing
* fix binary filling
* support dynamic batch size
* process images with original shapes if no tensor shapes were given
* fix fps and number of iterations
* Add new metrics
* support pass path to folder into input mapping
* add pcseq flag
* fix resolving conflicts
* dump statistic per group
* check for compatibility with partial shape
* revert statistic report names
* code refactoring
* update parameters
* enable legacy_mode if data size less than nireq
* add serialize to offline_transformations
* Fix preprocessing import
* change log output due to ci parsing
* fix layout
* allow to pass batch size with undefined layout
* add serializer
* fix comments from jiwaszki
* Fix latency parsing for ci
* code style
* rename tensor_shape to data_shape
* add message if image is processed with original shape
* fix syntax warning
* remove default legacy_mode if requests cover all data
* rewrite all file parsing
* fix preprocessing
* Fix preprocessing #2
* Use layout instead str
* Fix file extensions
* Fix image sizes filling
* sort input files
* [Python API] quick fix of packaging
* update tests
* fix setup.py
* small fix
* small fixes according to comments
* skip mo frontend tests
* full mode is default for dynamic models only
* backward compatibility
* Fix package
* set layout in runtime
* static mode for dynamic models with all equal data shapes
* use get_tensor instead set_tensor in legacy mode
* benchmarking dynamic model available in full mode only
* fix layout detection
* use batch_size * iteration instead processed_frames in legacy mode
* fix tensor naming
* represent --inference_only
* refactoring main loop
* Fix number of iterations for full mode
Co-authored-by: Michael Nosov <mikhail.nosov@intel.com>
Co-authored-by: pszmel <piotr.szmelczynski@intel.com>
Co-authored-by: Bartek Szmelczynski <bartosz.szmelczynski@intel.com>
Co-authored-by: Anastasia Kuporosova <anastasia.kuporosova@intel.com>
Co-authored-by: jiwaszki <jan.iwaszkiewicz@intel.com>
Co-authored-by: Victor Kuznetsov <victor.kuznetsov@intel.com>
Co-authored-by: Ilya Churaev <ilya.churaev@intel.com>
Co-authored-by: Tomasz Jankowski <tomasz1.jankowski@intel.com>
Co-authored-by: Dmitry Pigasin <dmitry.pigasin@intel.com>
Co-authored-by: Artur Kulikowski <artur.kulikowski@intel.com>
Co-authored-by: Ilya Znamenskiy <ilya.znamenskiy@intel.com>
Co-authored-by: Ilya Lavrenov <ilya.lavrenov@intel.com>
* move frontend folder to pyopenvino
* rename includes and add compile options
* include frontend to pyopenvino
* move __init__.py
* move tests
* remove mock from tests_compatibility
* rename import module
* Fix code style cpp
* refactor a few lines
* update few lines in mo
* Add pyopenvino to dependencies
* Fix mock
* update docstring
* Fix mo test
* remove module local
* fix code style
* update comment
* fix return type
* update docs
* fix code style
* fix building
* fix code style
* try to move MO to use new api
* Export more enum names from nrgaph
* [Python API] quick fix of packaging
* update tests
* fix setup.py
* small fix
* small fixes according to comments
* skip mo frontend tests
* update mo to new imports
* try to fix win wheel
* fix win wheel
* fix code style
Co-authored-by: Anastasia Kuporosova <anastasia.kuporosova@intel.com>
Co-authored-by: y <ilya.lavrenov@intel.com>
* ngraph and inference-engine parts
* add priorbox_8 python api
* remove 'PriorBoxAttrs' and 'PriorBox' from outside of opset namespace
* add common nGraph transformation 'ConvertPriorBox8To0'
* remove redundant alias of PriorBox::Attributes
* use new Tensor api for evaluate method
* change v0operation back to the former api, pass Attribute structure to the reference implement
* use new Tensor api for constant_fold
* add support for dynamic shapes of constant_fold new Tensor api
* fix Node 'create temp tensors' issue when shape==0'
* revert to 'HostTensor' api for PriorBox8
* Apply suggestions from code review and 'template_plugin reference' testcase replaced 'backend INTERPRETER' testcase
* transformation part Apply suggestions from code review
* python init file updated for opset8
* keep backward compatibility to fix CI issue
* rebase to new structure of OpenVINO repo
* revert 'thirdparty/onednn_gpu' mistake changes