* 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
* fix .ncc_style target names
it was breaking configure on system with libclang-12-dev, clang-12,
ninja and cmake 3.17+(ninja complains about duplicate
target). with lower cmake version configure succeeds, but build exits
immediately with error. by replacing ninja with make error becomes
warning(it's still significant, make just skips duplicate rules, i.e.
doesn't check style of some source files, rule duplication is genuine
bug). without libclang-12-dev and clang-12 ENABLE_NCC_STYLE is OFF and
bug is not triggered
* silence uninitialized warning in core_integration
probably it was always initialized before use, but compiler wasn't made
aware of it
* fix function spelling to unbreak code style checks in benchmark_app
* include <thread> for std::this_thread
existing code was relying on namespace pollution by old libstdc++
* replace is_pod with is_standard_layout && is_trivial
is_pod is deprecated, it breaks build on current gcc
Co-authored-by: Serhii Pavlovskyi <spavlovskyi@lohika.com>
Co-authored-by: Ilya Churaev <ilya.churaev@intel.com>
* 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>
* Depricated Any implicit cast
* Fixed test
* fixed gna build
* Fixed warnings in benchmark_app
* Fixed test build
* ncc exception for PrintTo
* Error mesage in test
* Error mesage in test
* fixed build
* Further fixes of plugins.xml generation
1) Unregistration is done by name (e.g. CPU), not by file name (ov_cpu_plugin)
2) Unregistered line is searched by name="MULTI" instead of just 'MULTI' to not conflict with MULTI_WORK_MODE_AS_AUTO entry
3) Removed list of all possible plugins from ov_runtime as logic shall not rely on this (not possible to add 3rd party plugins)
* Revert ov_runtime - some CI jobs require plugins.xml even though plugins are not built
Registration - if some entry already exists in XML - don't copy it.
E.g.
- Registration of 'TEMPLATE' is performed
- Registration loops through existing plugins.xml
- If name="TEMPLATE" is found - don't take it to newContent
- If name like "myCustomPlugin" is found - take it
- As result - "myCustomPlugin" will exist after update, but old "TEMPLATE" will be removed
* Add missing change
- Added registration (and unregistration) of ov_auto_batch_plugin. Otherwise 'BATCH' plugin will always produce new XML line without removing old one
- Added unregistration of legacy plugin names (<= 2021.4 release). Otherwise old lines like "libHeteroPlugin.so" will not be removed from plugins.xml file
* ShutdownProtobufLibrary when unload paddle frontend dynmaic library to fix probuf memory leak
* ShutdownProtobufLibrary if the frontend libraries use protobuf
* make shutdown_protobuf a library
* 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
* Create ov_runtime library
* Added dev target
* Fixed SOURCE_DIR property for interface lib
* Fixed missed include path
* Fixed SOURCES for plugins and frontends
* Fixed Windows export
* Try to fix preproc build
* Fixed MKLDNNPlugin
* Fix C API
* Try to fix public CI
* Fixed comments
* Use TARGET_NAME variable
* Fixed static build
* Fixed target name in comfig
* Revert "Fixed target name in comfig"
This reverts commit f61c1e0c09.
* Try to remove WA with include path
* Try to fix TBB dependency for old CMake
* Revert install to lib for legacy tests
* Try to fix public tests
* Add WA for v7 reader
* Fixed dev export name
Co-authored-by: Ilya Lavrenov <ilya.lavrenov@intel.com>
* 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
* Moved openvino to src
* Moved ngraph and frontends to src
* Fixed cmake generation
* Moved inference_engine libs to src
* Moved C API to src
* Fixed CMake generation
* Moved readers to tests, snippets and preprocessing to common
* Fixed CMake
* Moved transformations and lp_transformations
* Fixed transformations cmake
* Fixed build
* Fixed unit-tests and ci paths
* Fixed docs
* Fixed C API build
* Try to fix static build
* More clear order
* Renamed inference_engine_legacy_api to legacy
* Fixed some cmake scripts
* Fixed path to legacy
* Fixed Myriad plugin
* Fixed v7 reader
* Fixed plugin.hpp
* Fixed developer config
* Fixed ie_parallel
* Use ninja multu-config
* Reused OV_GENERATOR_MULTI_CONFIG
* Try to use config in api_validator post build task
* Fixes
* Revert "[GPU] Fix multi configuration build of onednn_gpu (#8743)"
This reverts commit a862331732.
* Propogate disable deprecated for _RELEASE flags as well
* Enabled PDPD, TF on Windows
* Try to build samples against static libs
* Fixes
* Fixes
* fix
* Used ENABLE_GAPI_PREPROCESSING in C API tests
* Revert "Used ENABLE_GAPI_PREPROCESSING in C API tests"
This reverts commit df9d53e3cc.
* Fixes
* Revert exclude
* Enabled proper OpenVINOConfig.cmake generation
* Try
* Try