Commit Graph
31 Commits
Author SHA1 Message Date
Piotr Krzemiński 8ff25cf4a2 [SPEC] Update ScaledDotProductAttention specification for broadcasting of batch dimensions (#21714)
* [SPEC] Update spec for broadcasting of batch dimensions, improve clarity

* [SPEC] Update code block style, comments in xml, attention_mask details
2023-12-18 12:19:06 +01:00
Piotr Krzemiński acb3f5ef28 [Core][Tests] Add attribute tests and decompotion tests for Scaled Dot Product Attention (#21356)
* [CORE][TESTS] Add attribute tests and decompotion tests for scaled dot product attention

* Update batch_norm_decomposition_test.cpp

* Clang fix

* Update scaled_dot_product_decomposition_test.cpp

* [TESTS]STS] Fix CIs with rename and clang fix

* [TESTS] Fix decomposition for CIs

* [TESTS] Remove constant mode

* [TESTS] Fix visitor test for CI

* [Tests] Add suggested broadcast tests
2023-12-18 10:18:48 +01:00
65439eda5d [Core][CPU] Add transformation for i64 support for Multinomial (#21469)
* [CORE] Add transformation for i64 support for Multinomial

* [CPU][TESTS] Apply test suggestions, remove unnecessary override - comment from cpu PR

* Update src/common/transformations/src/transformations/convert_precision.cpp

Co-authored-by: Mateusz Tabaka <mateusz.tabaka@intel.com>

* Update src/common/transformations/src/transformations/convert_precision.cpp

Co-authored-by: Mateusz Tabaka <mateusz.tabaka@intel.com>

---------

Co-authored-by: Ivan Tikhonov <ivan.tikhonov@intel.com>
Co-authored-by: Mateusz Tabaka <mateusz.tabaka@intel.com>
2023-12-13 20:22:34 +04:00
44f7bf7e3f [CPU] Multinomial implementation (#20406)
* [CPU] Temp save commit

* [CPU] Add initial CPU implementation of Multinomial

* [CPU] Add parallel implementation with mock randomuniform

* [CPU] Fix accumulate incorrect iterator provided

* [CPU] Add tests for multinomial

* [CORE] Add lost tests

* [CPU] Add dynamic shape inference and descriptors init

* [CPU] Revamp tests to multiple files

* [CPU/SPEC] Apply suggested changes

* [CPU] Fix test compilation issues, clang fix

* Update multinomial.cpp

* [CPU] Fix Incorrect Primitive Descriptor for multiple combinations

* [CPU] Change params to inputs in testing function

* [CPU] Fix dynamic shape inference tensor access error

* [CPU] Save stable version

* [CPU] Add template execute for different input dtypes

* [CPU] Introduce new method of loading data to tests, fix dynamic shape inference

* [CPU] Improve parralelism

* [CPU] Improve pararrelism - fix indexes

* [CPU] Fix no_replacement tests, fix randomness in tests

* [CPU] Split tests into log and no_log version to avoid rounding when values are close to 0

* [CPU] Add mersenne-twister seed and random_uniform distribution as source for randomness, add debug prints

* [CPU] Apply suggestions from review, fix 4x4 log tests

* [CPU] Force i32 convert format

* [CPU] Fix double to float conversion warning

* [CPU] Remove debugging prints, fix CIs float error

* [CPU] Fix for convert_type in CIs

* Update src/plugins/intel_cpu/src/shape_inference/custom/multinomial.hpp

Co-authored-by: Mateusz Mikolajczyk <mateusz.mikolajczyk@intel.com>

* Update src/plugins/intel_cpu/src/nodes/multinomial.hpp

Co-authored-by: Mateusz Mikolajczyk <mateusz.mikolajczyk@intel.com>

* Update src/plugins/intel_cpu/src/shape_inference/custom/multinomial.hpp

Co-authored-by: Mateusz Mikolajczyk <mateusz.mikolajczyk@intel.com>

* [CPU] Migrate to CPU API 2.0

* [Ref/CPU] Remove support for 1D tensors, use Core Shape Inference

* [CPU] Remove unnecessary symbols

* Update multinomial.cpp

* Update multinomial.cpp

* Update ops.py

* [CPU] Fix const identifier missing after reinterpret cast

* [CPU] Fix Mac cpplint error

* [CPU] Apply recommended changes - 0-seed nondeterminism, casts in testsshape_infer optimization

* [CPU] Apply iterator optimization suggestion

* [CPU] Replace casts with class constructors in tests

* [CPU] Remove unnecessary static_casts to void*

* Update multinomial.cpp

* [CPU] Apply suggestions from review - move template, fix i64 precision, redturn off shape precision for const inputs, set always-execute for const inputs

* [CPU] Relocate tests to shared, remove using namespace from header files

* [CPU] Add definitions for files eaten by clang fix

* [CPU] Fix seed for Mersenne Twister Engine

* [CPU] Try fix incorrect 1x3 for 3 samples test (bf16)

* [CPU] Use only mersenne for seed generation

* [CPU] Relocate test, add debug prints

* [CPU] Add relocated test that got eaten

* [CPU] Remove uniform distribution, replace with division by max value

* Update multinomial.cpp

* Update multinomial.cpp

* [CPU] Add explicit float cast for CIs

* Update multinomial.cpp

* [CPU] Use intel_cpu::bfloat16 to reduce innacuracies

* [CPU] Remove debug caps, all tests pass

* [CPU] Clang fix

* [GPU] Remove GPU 1D test case

* [CPU] Modify tests to add seed=0 case, add ignore statement for this test and add subtask to complete after current release

---------

Co-authored-by: Michal Lukaszewski <michal.lukaszewski@intel.com>
Co-authored-by: Mateusz Mikolajczyk <mateusz.mikolajczyk@intel.com>
2023-12-02 12:46:17 +01:00
Piotr Krzemiński bb3ed2d42e [SPEC] Apply changes from release branch (#20986) 2023-11-14 06:56:06 +01:00
Piotr Krzemiński e24b6211e3 [BUGFIX][Core][Template] Multinomial shape filling for 1D input (#20359)
* [BUGFIX] Fix incorrect shape filling for 1D tensor smaller than requested sample size

* [FIX] Remove redeclaration
2023-10-10 22:51:59 +00:00
Piotr Krzemiński 48164e2279 [Ref][Core][Opset13] Add Multinomial Operation (#19655)
* [Ref] Multinomial base file

* [Ref] Add core & reference implementation reusing other ops

* [Ref] Fix reference implementation, add missing parameters, add tests

* [Core] Add opset13, register multinomial, add shape inference

* [Ref][Core] Fix compile errors

* [Ref][Core] Clang fix

* [TEMPLATE] Remove bf16, f16, f64 types

* [TEMPLATE] Remove incorrect input types for 'input' parameter

* [Ref][Tests] Remove deleted test types

* [Ref] Fix & optimize  shape inference

* [PT FE] Apply suggestions from review

* [Template] Migrate to new API

* [Core] Add a clause for dynamic input in shape inference

* [Tests] Add missing type_prop test (?)

* Update multinomial_shape_inference.hpp

* Update multinomial.hpp

* [Ref] Fix build issues

* [Ref] Fix clang and style

* [Ref] Fix tests without replacement

* [Ref] Fix with_replacement sampling error

* [Ref] Remove debugging artifacts

* [Ref] Cast to 64-bit size for 32-bit systems

* Update multinomial.hpp

* [Ref] Add missing type_prop tests, add shape inference tests

* Update multinomial.cpp

* Update multinomial_shape_inference_test.cpp

* Update multinomial.cpp

* Update multinomial.hpp

* [Ref] Fix compilation errors from shape inference test

* [Ref] Fix compilation error of type_prop, apply recommendations from review

* [Ref] Add multiple shape inference tests

* [Ref] Change TEST to TEST_F, add more type_prop tests

* [Ref] Clang fixes

* [Ref] Fix shape inference tests with mismatching args

* [Ref] Fix remaining type_prop errors

* [Ref] Replace HostTensor with normal Tensor in shape inference tests

* Update opset.cpp

* [Ref] Possible fix for 'function empty' error

* [Ref] Add a cast to remove conversion warning

* [Ref] Add conformance test of Multinomial

* [Ref] Match style of conf test to the remaining tests

* Update single_op_graph.cpp
2023-10-04 17:14:32 +02:00
a4e1f9dbf8 [Spec][Opset13] Multinomial specification (#19866)
* [Spec] Multinomial specification

* [Spec] Apply recommended style fixes to Multinomial_13.md

* [Spec] Add range mathematical formulation

* [Spec] Update Multinomial input types

* Update opset13.md

* Update opset.md

* Update docs/ops/generation/Multinomial_13.md

Co-authored-by: Katarzyna Mitrus <katarzyna.mitrus@intel.com>

* Update Multinomial_13.md

* Update opset13.md

* Update docs/ops/generation/Multinomial_13.md

Co-authored-by: Katarzyna Mitrus <katarzyna.mitrus@intel.com>

* Update Multinomial_13.md

* Update Multinomial_13.md

* Update Multinomial_13.md

* Update docs/ops/generation/Multinomial_13.md

Co-authored-by: Katarzyna Mitrus <katarzyna.mitrus@intel.com>

* Update docs/ops/generation/Multinomial_13.md

Co-authored-by: Katarzyna Mitrus <katarzyna.mitrus@intel.com>

* Update docs/ops/generation/Multinomial_13.md

Co-authored-by: Katarzyna Mitrus <katarzyna.mitrus@intel.com>

* Update Multinomial_13.md

* [Spec] Replace 3107670 syntax with ..math

* Update Multinomial_13.md

* Update Multinomial_13.md

* Update docs/ops/opset13.md

Co-authored-by: Mateusz Mikolajczyk <mateusz.mikolajczyk@intel.com>

* [Spec] Apply changes from Ref/Core PR

* Update Multinomial_13.md

---------

Co-authored-by: Katarzyna Mitrus <katarzyna.mitrus@intel.com>
Co-authored-by: Mateusz Mikolajczyk <mateusz.mikolajczyk@intel.com>
2023-09-25 10:54:40 +02:00
Piotr Krzemiński e77070890a [PT FE] Fix Sporadic Quantized Ops Errors (#18962)
* [PT FE] Fix sporadics with round & 0 zero_pt, 1.0 scale

* [PT FE] Change scale and round input in quantized cat tests

* [PT FE] Add rounding to conv & linear tests

* Update test_quantized_cat.py

* Update test_quantized_cat.py

* [PT FE] Replace randn with rand for consistency in convnd
2023-08-14 15:41:36 +02:00
Piotr KrzemińskiandMaxim Vafin e076ed4726 [PT FE] Quantized Add, Add_ReLU, Mul, Hardswish (#18510)
* Support GetAttr with packed params

* Apply suggestions from code review

* [PT FE] Add quantized types as normal types to decoder

* [PT FE] Add decoder dequantize, add dtypes to quantize

* [PT FE] Add dequantize example

* [PT FE] Implement replacer for quantized nodes

* [PT FE] Register replacer for quantize/dequantize

* [PT FE] Remove unwanted junk from previous version

* [PT FE] Fix building mistakes for frontend

* [PT FE] Clang fix

* [PT FE] Ease of use upgrade to quantize funcs

* [PT FE] Clang format

* [PT FE] Introduce new version of quantize/dequantize

* [PT FE] Remove unwanted files from new version

* [PT FE] Fix style

* [PT FE] Add QuantizedPtNode replacer, fix accuracy error

* [PT FE] Quantized add

* [PT FE] Add improved version of quantize/dequantize with shared_ptrs

* [PT FE] Quantized Add Relu

* [PT FE] Fix utils shared ptr reference error

* [PT FE] Quantized Hardswish & tests

* [PT FE] Add quantized_add_relu test

* [PT FE] Quantize now takes correct input for operations

* [PT FE] Add dtype to tests

* [PT FE] Increase matrix size in the tests to cover more edge cases

* [PT FE] Upgrade quantize method

* [PT FE] Add BFS for dequantize, add quantize_per_channel

* [PT FE] Add missing replacer to frontend, improve tests

* [PT FE] Rename replacer -> remover, remove unwanted header files

* [PT FE] Change function declarations to return ov::Output instead of shared ptr

* [PT FE] Add missing context mark node

* [PT FE] Remove unknown modifications to ie_c_api

* [PT FE] Remove fp16 support, turn off int32 tests

* [PT FE] Clang format

* [PT FE] Fix quantize_per_tensor

* [PT FE] Minor fixes from review

* [PT FE] Remove dequantize, remove helpers, replacer now removes nodes instead

* [PT FE] Rename Replacer to Remover for dequantize nodes

* [PT FE] Clang format

* [PT FE] Move comments to header files, minor import fixes

* [PT FE] Enable add, add_relu, mul, hardswish with newest quantize ops

* [PT FE] Fix clang format

* [PT FE] Fix dtype issue

* [PT FE] Reenable hardswish tests

* [PT FE] Fix building error for quantized ops

* [PT FE] Tests now use rand instead of randn

* [PT FE] Remove int32 support from tests

* [PT FE] Fix quantize_per_channel tests

* Apply suggestions from code review

Removing sporadic tests from precommit

* Apply suggestions from code review

* [PT FE] Mark qint32 with skip, remove precommit flag due to sporadic errors

* [PT FE] Introduce quantized test for PytorchTestClass

* [PT FE] Add missing tensor size in the errors count computation

* Update pytorch_layer_test_class.py

* [PT FE] Apply suggestions from review - remove contexts, log100 for errors, add precommit flags

* Apply suggestions from code review

* [PT FE] Fix quantize per channel test after merge

* Update tests/layer_tests/pytorch_tests/pytorch_layer_test_class.py

* Update pytorch_layer_test_class.py

* Update test_quantize.py

* Apply suggestions from code review

* [PT FE] Fix quantized mul by changing default quantization dtype

* Update pytorch_layer_test_class.py

* Update tests/layer_tests/pytorch_tests/pytorch_layer_test_class.py

* Update src/frontends/pytorch/src/utils_quantize.cpp

* Update src/frontends/pytorch/src/utils_quantize.cpp

* Update tests/layer_tests/pytorch_tests/test_quantized_mul.py

---------

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>
2023-07-21 10:27:35 +00:00
Piotr KrzemińskiandMaxim Vafin 6d8dcb059d [PT FE] Fix conversion for aten::quantize_per_channel (#18646)
* Support GetAttr with packed params

* Apply suggestions from code review

* [PT FE] Add quantized types as normal types to decoder

* [PT FE] Add decoder dequantize, add dtypes to quantize

* [PT FE] Add dequantize example

* [PT FE] Implement replacer for quantized nodes

* [PT FE] Register replacer for quantize/dequantize

* [PT FE] Remove unwanted junk from previous version

* [PT FE] Fix building mistakes for frontend

* [PT FE] Clang fix

* [PT FE] Ease of use upgrade to quantize funcs

* [PT FE] Clang format

* [PT FE] Introduce new version of quantize/dequantize

* [PT FE] Remove unwanted files from new version

* [PT FE] Fix style

* [PT FE] Add QuantizedPtNode replacer, fix accuracy error

* [PT FE] Add improved version of quantize/dequantize with shared_ptrs

* [PT FE] Fix utils shared ptr reference error

* [PT FE] Quantize now takes correct input for operations

* [PT FE] Upgrade quantize method

* [PT FE] Add BFS for dequantize, add quantize_per_channel

* [PT FE] Add missing replacer to frontend, improve tests

* [PT FE] Rename replacer -> remover, remove unwanted header files

* [PT FE] Change function declarations to return ov::Output instead of shared ptr

* [PT FE] Add missing context mark node

* [PT FE] Remove unknown modifications to ie_c_api

* [PT FE] Remove fp16 support, turn off int32 tests

* [PT FE] Clang format

* [PT FE] Fix quantize_per_tensor

* [PT FE] Minor fixes from review

* [PT FE] Remove dequantize, remove helpers, replacer now removes nodes instead

* [PT FE] Rename Replacer to Remover for dequantize nodes

* [PT FE] Clang format

* [PT FE] Move comments to header files, minor import fixes

* [PT FE] Fix clang format

* [PT FE] Fix dtype issue

* [PT FE] Fix quantize_per_channel tests

* Apply suggestions from code review

Removing sporadic tests from precommit

* Apply suggestions from code review

* [PT FE] Fix conversion errors for aten::quantize_per_channel

* [PT FE] Mark axis 2 as xfail

---------

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>
2023-07-20 10:49:20 +02:00
Piotr KrzemińskiandMaxim Vafin d7984f3ec2 [PT FE] Add aten::quantize_per_tensor, aten::quantize_per_channel, aten::dequantize (#18266)
* Support GetAttr with packed params

* Apply suggestions from code review

* [PT FE] Add quantized types as normal types to decoder

* [PT FE] Add decoder dequantize, add dtypes to quantize

* [PT FE] Add dequantize example

* [PT FE] Implement replacer for quantized nodes

* [PT FE] Register replacer for quantize/dequantize

* [PT FE] Remove unwanted junk from previous version

* [PT FE] Fix building mistakes for frontend

* [PT FE] Clang fix

* [PT FE] Ease of use upgrade to quantize funcs

* [PT FE] Clang format

* [PT FE] Introduce new version of quantize/dequantize

* [PT FE] Remove unwanted files from new version

* [PT FE] Fix style

* [PT FE] Add QuantizedPtNode replacer, fix accuracy error

* [PT FE] Add improved version of quantize/dequantize with shared_ptrs

* [PT FE] Fix utils shared ptr reference error

* [PT FE] Quantize now takes correct input for operations

* [PT FE] Upgrade quantize method

* [PT FE] Add BFS for dequantize, add quantize_per_channel

* [PT FE] Add missing replacer to frontend, improve tests

* [PT FE] Rename replacer -> remover, remove unwanted header files

* [PT FE] Change function declarations to return ov::Output instead of shared ptr

* [PT FE] Add missing context mark node

* [PT FE] Remove unknown modifications to ie_c_api

* [PT FE] Remove fp16 support, turn off int32 tests

* [PT FE] Clang format

* [PT FE] Fix quantize_per_tensor

* [PT FE] Minor fixes from review

* [PT FE] Remove dequantize, remove helpers, replacer now removes nodes instead

* [PT FE] Rename Replacer to Remover for dequantize nodes

* [PT FE] Clang format

* [PT FE] Move comments to header files, minor import fixes

* [PT FE] Fix clang format

* [PT FE] Fix dtype issue

* [PT FE] Fix quantize_per_channel tests

* Apply suggestions from code review

Removing sporadic tests from precommit

* Apply suggestions from code review

---------

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>
2023-07-17 02:30:02 +02:00
Piotr Krzemiński 0d9109acf3 [PT FE] Add aten::_shape_as_tensor (#17804)
* [PT FE] Add aten::_shape_as_tensor impl

* Update shape_as_tensor.cpp

* [PT FE] Fix headers, add explicit type, comment out shape detection

* [PT FE] Reverse example comments
2023-06-05 10:59:12 +02:00
Piotr KrzemińskiandMaxim Vafin 3d8a620ac3 [PT FE] Add aten::_native_multi_head_attention (#17550)
* [PT FE] Add implementation of MHA

* [PT FE] Add tests, add scaled dot product attention

* [PT FE] Fix missing transpose for Q,K,V & output Attention

* [PT FE] Formatting errors

* [PT FE] Fix testing class with nn.Linear

* [PT FE] Fix incorrect key franspose in dot product attention computation

* [PT FE] Fix incorrect matmul due to lack of transpose

* [PT FE] Enable support for all boolean masks

* [PT FE] Fix returned weights

* [PT FE] Remove debugging artifacts

* [PT FE] Remove unused nodes, optimize transpose nodes' usage, add comments to floating masks

* [PT FE] Further reduce node usage, return None instead of 0 for return_weights=false

* [PT FE] Allow for dynamic num_num_head, embed_dim

* [PT FE] Improve error comment, remove unnecessary Unsqueeze

* [PT FE] Clang format

* Update tests/layer_tests/pytorch_tests/test_native_multi_head_attention.py

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>

* [PT FE] Add masks comments, improve mask broadcasting

---------

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>
2023-06-05 10:55:03 +02:00
Piotr KrzemińskiandMaxim Vafin 482c030408 [PT FE] Add aten::LogSoftmax (#17629)
* [PT FE] Add aten::LogSoftmax implementation & tests

* Update log_softmax.cpp

* Update src/frontends/pytorch/src/op/log_softmax.cpp

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>

* [PT FE] Add recommended comment, replace get_input_tensor with new implementation

* [PT FE] Align to f32 if no dtype provided

* [PT FE] Revert type align

---------

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>
2023-06-01 12:04:27 +00:00
Piotr KrzemińskiandAndrei Kochin 1c286e4636 [PT FE] Add aten::all implementation (#16901)
* [PT FE] aten::all implementation with tests

* [PT FE] Add non-dynamic type check

* [PT FE] Update tests, temporarily turn off uint8 tests

* [PT FE] Fix dtype for uint8

* [PT FE] Apply suggested optimizations

---------

Co-authored-by: Andrei Kochin <andrei.kochin@intel.com>
2023-05-02 21:12:12 +02:00
Piotr KrzemińskiandMaxim Vafin b7311d8907 [PT FE] Fix aten::chunk for dynamic shapes (#16902)
* [PT FE] Add replacer for chunk+getitem

* [PT FE] Fix missing replaced nodes, fix incorrent chunk size calculation

* [PT FE] Fix incorrect item shape, reduce tests count

* [PT FE] Convert back with frontend

---------

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>
2023-05-01 09:32:10 +00:00
Piotr KrzemińskiandMichal Lukaszewski 22a81e0e58 [PT FE] Enable stable tests for sort & argsort (#16415)
* [PT FE] Enable stable tests for sort & argsort

* Update test_argsort.py

* [PT FE] Update to opset11

* [PT FE] Remove redundant argument from argsort test

---------

Co-authored-by: Michal Lukaszewski <michal.lukaszewski@intel.com>
2023-04-25 01:21:16 +04:00
Piotr Krzemiński 6b70c449ba [PT FE] Add aten::Chunk implementation (#16035)
* [PT FE] Add chunk implementation:

* [PT FE] Fix chunk int64 instead of const node errors, add tests for chunking

* [PT FE] Test Chunk-If implementation

* [PT FE] Change the translate to replace chunk implementation, use VariadicSplit instead of Slice

* [PT FE] Reduce artifacts from debugging

* Update test_chunk.py

* [PT FE] Improve & debug chunk implementation:

* [PT FE] Simplify implementation, fix remaining bugs

* [PT FE] Statify the split lenghts output

* [PT FE] Clear code, remove debugging artifacts
2023-03-27 11:16:16 +02:00
Piotr KrzemińskiandZlobin Vladimir 2eef025773 [PYTHON] Introduce Json Statistics Report aligned with C++ version (#15692)
* [PYTHON] Introduce Json Statistics Report aligned with C++ version

* [PYTHON] Update README with new json_stats flag

* [PYTHON] Fix missing StatisticsReportConfig compilation error

* [PYTHON] Fix README formatting

* [PYTHON] Fix indent, fix pcsort error thrown for timedelta/int type mismatch, fix some compilation errors

* [PYTHON] Apply Pythonization ideas & fix JSON report showing incorrect category results

* Update tools/benchmark_tool/openvino/tools/benchmark/utils/statistics_report.py

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>

* [PYHON] Align multiple-iterations behavior for reports

---------

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>
2023-03-13 13:58:40 +04:00
Piotr KrzemińskiandMaxim Vafin 0860db0dc3 [PT FE] Add aten::ArgSort & aten::Sort (#15769)
* [PT FE] Add aten::argsort implementation & tests

* [PT FE] Fix formatting

* [PT FE] Fix incorrect node type for Gather

* [PT FE] Fix Reshape missing argument

* [PT FE] Simplify syntax, fix int/int64 conversion error

* [PT FE] Fix argsort incorrectly sorting negative dimension, fix tests

* [PT FE] Revert modify test class

* [PT FE] Fix formatting of argsort

* [PT FE] Fix define macro style

* [PT FE] Add missing EOF

* [PT FE] Add stable==false check, add support for different constructor calls

* [PT FE] Add aten::sort implementation & tests

* [PT FE] Apply style changes, add XFail test for stable sorting

* Update sort.cpp

* Update sort.cpp

* [PT FE] Apply style changes from aten::sort t PR

* Update test_argsort.py

* [PT FE] Apply suggested modifications

* Update test_argsort.py

* [PT FE] Apply review suggestions, add tests and extract sort method to utils

* [PT FE] Use utils sort function to implement argsort

* [PT FE] Fix input size check 4->5

* [PT FE] Implement improved tests

* [PT FE] Implement improved tests

* [PT FE] Add xfail to not yet supported tests

* [PT FE] Merge 2 implementations of sort and argsort into a single file

* [PT FE] Remove redundant sort_elements from utils

* [PT FE] Add num_inputs_check

---------

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>
2023-03-05 20:12:32 +01:00
Piotr KrzemińskiandZlobin Vladimir d0a97af629 [BENCHMARK_APP] Introduce Numpy array loading for C++ benchmark app/Fix a bug that would cause Python Numpy array loading to fail (#14021)
* [C++/BENCHMARK_APP] Introduce Numpy array loading for C++ benchmark app

* [DOCS/BENCHMARK_APP] Update docs to reflect changes, update list of available extensions from OpenCV, align help messages

* Update inputs_filling.cpp

* Update tools/benchmark_tool/openvino/tools/benchmark/utils/inputs_filling.py

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>

* Update samples/cpp/benchmark_app/inputs_filling.cpp

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>

* [C++/Python] Implement quality-of-life improvements from PR comments

* [C++] Fix compilation errors, fix linter output

* [C++/PYTHON] Apply requested changes

* Update samples/cpp/benchmark_app/main.cpp

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>

* Update samples/cpp/benchmark_app/utils.cpp

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>

* [PYTHON] Separate loading of numpy arrays similar to images

* [PYTHON] Remove unnecessary 'Prepare xxx file' print

* Update README again because IF OPENCV.. dissapeared for some reason

* Update second README with missing IF OPENCV..

* [C++] Remove unnecessary vector print function

* [C++ Add Numpy processing function - TODO link it to the tensor filling

* Reverse OneDnn plugin modification

* [C++] Numpy array loading for C++

* [C++] Add (almost) all missing types of data

* Reverse submodule modifications

* [C++/PYTHON] Fix compilation errors, clean code

* [C++] Modify supported extensions, add numpy checking to utils, add numpy to get_image_info method

* Update samples/cpp/benchmark_app/inputs_filling.cpp

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>

* [C++] Fix utils header file to reflect unordered set change

* [PYTHON/C++] Fix compilation errors in C++ code, fix Python dynamic shapes numpy loading

* [C++] Fix explicit instantiation of NumpyArray reader

* [C++] Clang format, minor syntax fixes

* [PYTHON/C++] Remove unnecessary data types, introduce a new approach to cast data of different types from format_rt_reader, remove uppercase types from Python precision parameters

* [PYTHON] Update README to reflect new precision settings

* [PYTHON] Fix README, fix clang format

* [C++] Clean headers

* [C++] Fix uninitialized variable error

* [C++/PYTHON] Fixed choices in Python benchmark, fixed types in C++ benchmark

* [C++] Fixed ov::float16conversion, fixed Python types map - removed redundancies

* [C++] Add back boolean support

* [C++] Fix compilation errors

---------

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>
2023-02-13 12:04:23 +04:00
Piotr KrzemińskiandIlya Churaev 7e3e0ff003 [C++] Fix coverity issues (#15348)
* [C++] Fix coverity issues

* Merge master with this branch

* [C++] Reapply changes that got eaten during merge

* Update samples/cpp/benchmark_app/main.cpp

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

* [C++] Add missing const keyword

---------

Co-authored-by: Ilya Churaev <ilyachur@gmail.com>
2023-01-31 13:13:35 +04:00
f4ff1cbdf3 [BENCHMARK_APP] Align pc reports, revert format print to previous, excel friendly (#14644)
* [Python] Align pc output in Python benchmark, update sorted output to new headers, print floats with 6-digit precision, fix date format printing to excel-friendly

* [PYTHON/C++] Change precision of raports and pc counters report, simplify code

* [C++] Align C++ benchamrk_app report to Python's by setting the precision value to 3

* [C++] Fix CsvDumper precision

* [C++/PYTHON] Align pcand pcsort outputs, merge C++ printSort methods into one

* Update samples/cpp/common/utils/include/samples/common.hpp

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>

* Update samples/cpp/common/utils/include/samples/common.hpp

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>

Co-authored-by: Michal Lukaszewski <michal.lukaszewski@intel.com>
Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>
2023-01-11 12:38:37 +04:00
Piotr Krzemiński f9796ee06a [BENCHMARK_APP] Add warning if performance mode is not set to max on Windows (#14616)
* [C++] Display a warning if Power Mode is not 'Max Performance' - rebase from master

* [C++] Prevent std::max from colliding with windows.h max macro

* [PYTHON/C++] Update README docs to reflect possible inaccuracies from optimization settings

* [C++] Cleanup windows optimizations
2022-12-23 06:37:57 +01:00
Piotr Krzemiński 57082859ef [BENCHMARK_APP/C++] Align performance counters and report output (#14140)
* [BENCHMARK_APP/C++] Align performance counters output, set all output time values to milliseconds

* [C++] Style fixes
2022-11-30 12:01:44 +04:00
d951623027 [BENCHMARK_APP/PYTHON/CPP] Align benchmark_app output across languages (#12814)
* [PYTHON] Pipeline transfer

* [PYTHON] Align python benchmark

* [PYTHON] Align last step

* [PYTHON] Fix innacuracies of the last step - median

* [PYTHON/CPP] Add Core::get_version method to python API, refactor Ben benchmark to print version with this func

* [PYTHON] Remove get_version_string from API

* [PYTHON/CPP] Align output for model input/output info

* [PYTHON/CPP] Step 4,6 alignment of outputs, step 8 dumps all info stored in config parameters

* [CPP] Fix a bug causing nstreams parameter to never be set to AUTO in CPP benchmark_app

* [CPP] Fix clang format errors

* [CPP] Modify print order and data output for 8th step

* [PYTHON] Add verification checks from C++, modify set_thoughtput_streams to match documentation

* [CPP] Revert changes to C++ benchmark_app

* [CPP] Remove additional spacebar

* Update submodules versions on remote

* Update module from master branch

* Redownload submodules from master and override changes from commit

* [PYTHON] Remove unneccesary parse_status from validation function

* [PYTHON] Check for HINT in map, fix circular import

* [PYTHON] Remove artifacts from commit, fix args.perf_hint set to '' instead to 'none'

* [PYTHON] Reverse changes to perf hint, add key in map check, fix validation function throwing error on set hint

* [PYTHON] Fix linter

* [PYTHON] Remove linter spacebar

* [CPP] Fix wait_all exception throw

* [CPP/PYTHON] Clean artifacts and unwanted changes from work process

* [PYTHON] Fix artifacts from merge, clean submodule update

* [C++ CPU] Fix device name string by removing padding NULL characters from the back

* [CPP] Fix ba infer_request_wrap in other throw-catch clauses

* [PYTHON/CPP] Fix missing latencies in final step for shape group, fix minor misaligned messages, add missing report parameter create infer requests time

* [CPP] Clang fix formatting

* [CPP] Reverse clang fix format on plugin.cpp

* [PYTHON/CPP] Fix C++ progressbar printing endl when disabled, fix rounding in python creating infer request message

* [CPP] Fix foramtiing error

* [PYTHON/C++] Refactor network to model based on naming conventions, provide fresh README output example

* [PYTHON/C++] Add example output to C++ README, remove unnecessary device loop

* [BENCHMARK_APP/C++] Fix artifact from refactoring, remove try-catch clause

* Update samples/cpp/benchmark_app/benchmark_app.hpp

Co-authored-by: Nadezhda Ageeva <nkogteva@gmail.com>

* Update samples/cpp/benchmark_app/main.cpp

Co-authored-by: Nadezhda Ageeva <nkogteva@gmail.com>

* Update tools/benchmark_tool/openvino/tools/benchmark/main.py

Co-authored-by: Nadezhda Ageeva <nkogteva@gmail.com>

* Update samples/cpp/benchmark_app/main.cpp

Co-authored-by: Nadezhda Ageeva <nkogteva@gmail.com>

* [CPP] Fix clang errors

* [CPP/PLUGIN Reverse modification to extract to separate task

* Update tools/benchmark_tool/openvino/tools/benchmark/main.py

Co-authored-by: Nadezhda Ageeva <nkogteva@gmail.com>

* Update tools/benchmark_tool/openvino/tools/benchmark/parameters.py

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>

* Update tools/benchmark_tool/openvino/tools/benchmark/utils/utils.py

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>

* Update tools/benchmark_tool/openvino/tools/benchmark/main.py

Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>

* [PYTHON/C++/BENCHMARK_APP] Fix language inconsistencies, remove unnecessary checks

* Update pyopenvino.cpp

* [CPP/BENCHMARK_APP] Remove unnecessary try-catch, fix linter errors

* [PYTHON/CPP/BENCHMARK_APP] Revert changes to Core, align version prints usin only provided methods

* [DOCS/BENCHMARK_APP] Update README with proper model examples

* Update README.md

Co-authored-by: Nadezhda Ageeva <nkogteva@gmail.com>
Co-authored-by: Michal Lukaszewski <michal.lukaszewski@intel.com>
Co-authored-by: Zlobin Vladimir <vladimir.zlobin@intel.com>
2022-11-14 14:10:36 +01:00
054eea3c5a [SAMPLES/PYTHON] Fix ACCESS_VIOLATION error when importing cv2 (#13443)
* [PYTHON] CV2 module required only when loading images

* [PYTHON] Update tools/benchmark_tool/openvino/tools/benchmark/utils/inputs_filling.py

Co-authored-by: Helena Kloosterman <helena.kloosterman@intel.com>

* [PYTHON] Make CV import not global

* [PYTHON] Update format of inputs_filling.py

* [PYTHON] Fix missing newline

* Update tools/benchmark_tool/openvino/tools/benchmark/utils/inputs_filling.py

Co-authored-by: Helena Kloosterman <helena.kloosterman@intel.com>

* [BENCHMARK_APP/PYTHON] Introduce exception when module is installed but fails to import

* [SAMPLES/PYTHON] Sporadic access violation fix through checking whether module was cached

Co-authored-by: Helena Kloosterman <helena.kloosterman@intel.com>
Co-authored-by: Michal Lukaszewski <michal.lukaszewski@intel.com>
2022-11-11 04:10:20 +03:00
Piotr Krzemiński f893a58816 [BENCHMARK_APP] Show input command in output (#13402) 2022-10-26 10:58:09 +02:00
Piotr Krzemiński d715ecaa32 [CPP/SAMPLES] Samples location independant on script execution directory (#13251) 2022-10-20 10:01:55 +02:00
Piotr Krzemiński 29a15e39da [BENCHAMRK_APP/PYTHON] CV2 module required only when loading images (#13113) 2022-10-05 09:50:55 +02:00