* 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<>
* 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
* [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
* 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
* 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
* 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
* 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
* 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
* 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
* Add type_prop tests
* Add shape_infer tests
* Update shape_infer to preserve interval dim and label
* Unified approach for get_data_as_shape and negative value checks
* Remove redundant gtest header
* rename one hot shape infer test file
* Add test for shape_infer with default ctor and adjust resolve_axis
* Move get_data_as_shape changes to the one hot custom util
* Adjust custom get_data_as_shape
* Select shape_infer tests update
* Add Select type_prop tests
* Add evaluate_lower/upper for select
* Revert evaluate_lower/upper for Select
* Use get_node_input_partial_shapes
* Style and headers improvements
* Style apply
* Rename select shape infer file tests
* Use default ctor for output_shapes init
* Use helper for shape_labels init and add more dim test cases
* Review tile for shape inference:
- propagate labels and dimension
- template implementation of shape inference
- if repeats is not-positive output dim is always 0
* Refactor Tile shape inference
* Review preserve partial values and labels
* Add support to evaluate bounds from repeats input
* Remove not used code
* Review dims and labels propagation for logical not
* Review dims and labels propagation
for logical and, or, xor
* Remove duplicated tests
* Expand logical ops tests by numpy broadcast
and inputs order
* Review template shape infer of logical ops
- add static shape inference test
- add default ctor test
* Default ctor test for LogicalNot op
* Review labels and dimension propagation
- check dimensions propagation with partial dimension
- extend testing for labels an dimensions propagation
* Shape inference support bounds evaluation
on begin, end inputs
* Review static shape inference
* Move sequence generator to dev API
to avoid create unnecessary library dependency
* Fix windows build issue
* Use strided slice in scatter update test
of partial value propagation
* Remove unused constant from test
* Fix strided dim calculation
* Fix clip lb,ub for strided dim calculation
* Use op strides if absent in input_shapes
* Move back SeqGen to shape inference
Co-authored-by: Evgenya Stepyreva <evgenya.stepyreva@intel.com>
* Review einsum shape and label propagation
- extend type_prop test by check labels and einsum properties
* Review template implementation of shape inference
- rename StaticShape inference test file
- use common fixture and rename test cases
- add default ctor test
- add equation string setter
* Fix einsum label propagation check
due to improvement of dimensions and labels merge
* Remove BWDCMP_RTTI_DEFINITION from einsum op
Co-authored-by: Evgenya Stepyreva <evgenya.stepyreva@intel.com>