From 3976b688cb679412f40f1d1a34a5afad150d722d Mon Sep 17 00:00:00 2001 From: Mikhail Ryzhov Date: Tue, 18 Jul 2023 11:32:33 +0200 Subject: [PATCH] Squashed commit of the following: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit commit 19125a7c95f36916ec895513e364f5cf25bde1f0 Author: Mikhail Ryzhov Date: Sun Jul 2 20:39:06 2023 +0200 is_concat_supported based on ngraph commit e8f99ef52197600b791211c389b84943b31a79ee Author: Mikhail Ryzhov Date: Fri Jun 30 11:47:51 2023 +0200 Enabled the rigth concat axis check commit 158e1c36282213c853e4c744085f70e91f9a2a62 Author: Mikhail Ryzhov Date: Wed Jun 28 22:20:26 2023 +0200 clang fix commit 515b78863a264826679779c3d26276180669bc65 Author: Mikhail Ryzhov Date: Wed Jun 28 22:01:28 2023 +0200 Fixed concat axis checks commit bd04f4c6d64f766a10c6b6465346568394eeb2fc Merge: 17ea24d214 deb6231329 Author: Mikhail Ryzhov Date: Sun Jul 2 20:42:07 2023 +0200 Merge branch 'master' into feature/2d_transpose_rebased commit 17ea24d2141ec4f6bb018e1ad01371da458831b8 Author: Mikhail Ryzhov Date: Fri Jun 30 11:47:51 2023 +0200 Enabled the rigth concat axis check commit f76833f17eeb56a5fa4b1d5372dce71df9bb539b Author: Mikhail Ryzhov Date: Thu Jun 29 13:59:17 2023 +0200 fixed tests commit 47f3ef4444d8e1de7be51ceced2ee26fccfafbaf Author: Mikhail Ryzhov Date: Thu Jun 29 11:35:51 2023 +0200 corrected transpose checking commit 2f5443bd75264fcb67b23a507a8330d56dc9aa42 Merge: a4a7344732 985f02974a Author: Mikhail Ryzhov Date: Thu Jun 29 11:25:47 2023 +0200 Merge branch 'feature/2d_transpose' into feature/2d_transpose_rebased commit 985f02974a77ec25537f73d20fce2558f7d66322 Merge: a4a7344732 583aed5d2d Author: Mikhail Ryzhov Date: Thu Jun 29 11:16:08 2023 +0200 rebase on master commit 583aed5d2d14d983ca1ac0902c9945beb7adfcd7 Merge: 1e2560e349 fd35bad32b Author: Mikhail Ryzhov Date: Thu Jun 29 10:12:17 2023 +0200 Merge branch 'feature/2d_transpose' of https://github.com/mryzhov/openvino into feature/2d_transpose commit 1e2560e3495402be591712b4b645b05c8282059c Author: Mikhail Ryzhov Date: Wed Jun 28 22:28:08 2023 +0200 clang fixes commit ef49c802650e8e5cc8f1bd18b22376b79fa7d257 Author: Mikhail Ryzhov Date: Wed Jun 28 19:15:20 2023 +0200 added tests commit 066df5dffce8bcf23b8b2c2c8546803c8d3091ee Author: Mikhail Ryzhov Date: Wed Jun 28 14:21:57 2023 +0200 rename transformation commit d0a3a0eba7028185a16b1ee39b2770cae6992fb9 Author: Mikhail Ryzhov Date: Mon Jun 19 15:28:10 2023 +0200 additional check commit 65f201891ffa6328682627a52cc5a5b0233685fc Author: Mikhail Ryzhov Date: Tue Jun 13 15:09:51 2023 +0200 Fixed fused indexes commit d3337bafa1c2d1b33911ea49941d40500edb571b Author: Ivan Novoselov Date: Mon Jun 12 08:07:49 2023 +0100 [Snippets] Documentation update (#17678) commit 24997fba7728c98c08ab6b25f26046ebf5695199 Author: Pawel Raasz Date: Mon Jun 12 07:05:46 2023 +0200 Add static shape adapters to reduce dimension conversion in shape_infer for CPU (#17862) * Add static shape adapter - Adapters holds CPU dimension which can be reference to it or vector - Add ov::optional for holding optional result from shape inference - Add new `infer` function in `IStaticShapeInfer` * Temporary support of StaticShape * Fix build issues * Correct shape adapter compare - minor static shape adapter refactor * Minor corrections in ShapeInferenceTA * Fix subscript operator in StaticShapeRef commit 7e2bffdf57b7082621e636c199938fe16538a2e7 Author: Sergey Shlyapnikov Date: Mon Jun 12 08:39:42 2023 +0400 [GPU] Fix dynamic padding processing of static dimension (#17978) commit 88cf0413388142e4d187f3d06ada013cb70cefc6 Author: Mateusz Tabaka Date: Sun Jun 11 10:49:31 2023 +0200 Fix static analysis issues in pruning mask propagation (#17910) Ticket: CVS-108960 commit f9b073902e41d8af6618e0d096c1557854d86a2f Author: Mateusz Tabaka Date: Sun Jun 11 09:49:21 2023 +0200 Don't constantfold weights in MatMulConstTransposesExtraction transformation (#17917) get_constant_from_source for Transpose node calls evaluate method twice which is unnecessary in this case. Ticket: CVS-105967 commit dcba15d5561568d2944d9d2283cc934e516c589d Author: Ilya Lavrenov Date: Sat Jun 10 23:40:39 2023 +0400 ARM static build (#17970) commit 9182f16e749776b77a277754b15cab8ab09fd761 Author: Ilya Churaev Date: Sat Jun 10 19:25:54 2023 +0400 Deprecate main IE developer API classes (#17983) * Deprecate main IE develiper API classes * Remove legacy snippet * Fixed warning for VariableState commit da350f585f270eebfb6722e98b35162967b285e3 Author: Ivan Tikhonov Date: Sat Jun 10 12:24:43 2023 +0400 Delete the deprecated LowLatency (version1) transformation (#17965) * Delete the deprecated LowLatency (version1) transformation * detele LowLatency refs from the docs commit fae241f092a723537fa39815a4509467b54377bf Author: Wilson Seok Date: Sat Jun 10 16:28:00 2023 +0900 [GPU] gather nd shape agnostic kernel implementation (#17940) * gather nd shape agnostic kernel implementation * add func test * fix minor bugs * minor bug fixes * fix win build error commit 614947ce2950d70616c9e9cb4a4670e59ffe0d04 Author: Andrew Kwangwoong Park Date: Sat Jun 10 08:07:01 2023 +0900 [GPU] Fuse type conversion only reorders to the prev nodes (#17881) * Fuse convert reorder to prev MVN/Concat node Signed-off-by: Andrew Park * Add dynamic TCs for ov_gpu_unit_test Signed-off-by: Andrew Park * Add descriptions for changes Signed-off-by: Andrew Park * Fix kernel selection failure Signed-off-by: Andrew Park * Add is_type_conversion_only function for reorder_node Signed-off-by: Andrew Park --------- Signed-off-by: Andrew Park commit c5bb3e038b9fed4cf4ba47faf16555acf870df5d Author: Egor Duplenskii Date: Sat Jun 10 00:09:59 2023 +0200 [CPU][DEBUG_CAPS] Fix compilation warnings (#17977) commit 8bad2620950c85039cd5c77e730c2ff517097cda Author: Wang Kai <53281385+kai-waang@users.noreply.github.com> Date: Sat Jun 10 05:13:31 2023 +0800 fixing some typos (#17980) commit c5cc3959cf21c3d4d7683802659ed882eacd37bf Author: Edward Shogulin Date: Fri Jun 9 22:12:52 2023 +0100 [LPT] tests rename for nightly: part #2 (#17926) commit b4abaf61b61b25f6189aea4f5cf42e0fc22b6576 Author: Ilya Churaev Date: Fri Jun 9 21:55:14 2023 +0400 Deprecate plugins config keys (#17974) commit 4c74924fb05bb73a35f7c6a9f392965a3c408965 Author: Mateusz Tabaka Date: Fri Jun 9 18:31:20 2023 +0200 AlignEltwiseInputRanks - fix when output rank is less than constant rank (#17895) Fixes an issue when AlignEltwiseInputRanks is applied on FakeQuantize with scalar as a first input and input/output low/high being Shape{1} constants. In such case FakeQuantize output is still a scalar, so the difference between output rank and input/output low/high rank is negative. Ticket: CVS-112454 commit bd93876f5ec76ef6a61eeb4894b28ff1cbe084e7 Author: Ilya Churaev Date: Fri Jun 9 18:08:53 2023 +0400 Port some changes from proxy branch (#17961) * Port some changes from proxy branch * Port test changes * Rewrite approach for compile model and tensor * Fixed review commit 6742f6ec10ddd88fcf3eeb5ad165fe319ae44246 Author: Ilya Churaev Date: Fri Jun 9 15:48:04 2023 +0400 Update OMZ to support OpenCV without GAPI (#17972) commit 4e81d814f267905ea40a0cb1eec8476a29f78f39 Author: Alexey Kazakov Date: Fri Jun 9 12:15:02 2023 +0100 Move dependencies to the new share (#17825) commit a93c312d663d6f997a2b2de8e936317948912e14 Author: Maciej Smyk Date: Fri Jun 9 13:04:00 2023 +0200 Update build_linux.md (#17966) commit 3174067c48b8aab01e72322accb3b55e2beab3b9 Author: Wonju Lee Date: Fri Jun 9 18:56:30 2023 +0900 [DOCS] Adding Datumaro document into OV Ecosystems (#17944) * add Datumaro document * add datumaro into toctree commit 0187b1230a34297892268103cbcf8b7c07e26af8 Author: Ilya Churaev Date: Fri Jun 9 13:09:17 2023 +0400 Update OMZ submodule (#17963) commit 3a23dd7bca44859d261cc3c42b43022720535514 Author: Sebastian Golebiewski Date: Fri Jun 9 09:08:14 2023 +0200 [DOCS] Fixing broken code blocks (#17959) * code-blocks-fixes commit 1188dc581031a93c799f50577696495903424fa7 Author: Ilya Lavrenov Date: Fri Jun 9 08:03:10 2023 +0400 Android debug build (#17955) commit 11da2f7755002e638922ee46996a153a893ec183 Author: Ilya Lavrenov Date: Thu Jun 8 21:22:33 2023 +0400 Try to use system flatbuffers on Android (#17954) commit cf64e6ca38fc67f28926e8c8ab8dadcf5cfd0fc4 Author: Gorokhov Dmitriy Date: Thu Jun 8 21:09:37 2023 +0400 [CPU] Fixed KEY_LP_TRANSFORMS_MODE internal propery behavior (#17945) commit 1cfd25e89e08058a43beff090af4808b1cb2f0de Author: Zlobin Vladimir Date: Thu Jun 8 19:30:29 2023 +0400 cpp/samples: update build (#17900) * cpp/samples: update build Ticket 111295 * Fix sample_type extraction * Fix inputLog type * include * Add missing const * Revert cpp/speech_sample error message * update azure CI commit eb1d14b264a61ff732a333b3d7f7ac352384c65a Author: Mircea-Aurelian Dan Date: Thu Jun 8 17:55:53 2023 +0300 Set default duration to 60 for device `VPU` (#17952) commit f1ceb912cff722be558cf481689c383b64a6eab7 Author: Ilya Lavrenov Date: Thu Jun 8 18:31:55 2023 +0400 Fixes for deployment manager (#17899) commit de4108579ba8991baff686a4af2732134d95c8c9 Author: Sun Xiaoxia Date: Thu Jun 8 14:28:35 2023 +0000 Xiaoxia/update cpu mapping (#17451) * generate cpu mapping table pre tbb * change function name * fix proc_type_table is wrong in RPL * add getCpuMapFromCores test, fix comments * modify test case * fix comments * fix code style * add throw an exception * fix numa_nodes=0 on ARM * modify numa_nodes * fix ExportOptimalNumStreams failed on ARM * fix comments * add discription of get_cpu_mapping_from_cores * update for numactl support * fix cores is wrong --------- Co-authored-by: Wanglei Shen commit c95a8225a5f4c16257ab6ecb0da4e9ff54fdd2f5 Author: Daria Mityagina Date: Thu Jun 8 16:47:40 2023 +0300 Update comments and help text (#17707) commit 9b98ac0fb2f86ddf873440c4e95bc19fa14b3136 Author: Alexandra Sidorova Date: Thu Jun 8 16:22:48 2023 +0400 [Snippets] Fixed copy runtime info which contains PortDescriptors (#17774) commit f16c961a73cad3886d47f5d34730473afcc50b5f Author: Ilya Lavrenov Date: Thu Jun 8 15:35:27 2023 +0400 Enable python API in deb / rpm packages (#17923) * Enable python API in debian package * Enable python API in debian package commit a20e43238a8f65dd679c11df10c7037d55a8d8bb Author: Ilya Lavrenov Date: Thu Jun 8 15:00:25 2023 +0400 Align tabs in install archives Linux (#17947) commit cac43ca565afd508d4b6abf70e8b416c3f651b82 Author: Sergey Shlyapnikov Date: Thu Jun 8 13:46:21 2023 +0400 [GPU] Add shape_of subgraphs markup and initial cpu implementations (#17762) * [GPU] Add shape of subgraphs markup and initial cpu implementations for some of primitives * Apply review comments * Exclude eltwise with boolean mode types from shape of subgraphs and fix leftovers commit 36bed862a767fa9f65eb5d61e4c13feaaeab64a2 Author: Alexandra Sidorova Date: Thu Jun 8 12:05:14 2023 +0400 [Snippets] Add support of MHA Tokenization for different precisions (#15647) commit 728763bde1b8c09d48f0c01ec6af65cae2f6f698 Author: Ilya Lavrenov Date: Thu Jun 8 11:08:58 2023 +0400 Support different names for ITTAPI (#17889) commit 1d0f52e62f4ea2fc14493a69f477f64f667c110d Author: Sebastian Golebiewski Date: Thu Jun 8 08:32:08 2023 +0200 update-deployment-manager (#17903) commit 3a5575837460e97c4cb1da0095970f7a6326cf26 Author: Taylor Yeonbok Lee Date: Wed Jun 7 19:39:26 2023 -0700 [GPU] Fix issue in runtime buffer fusing (#17909) * There were two issues in runtime buffer fusing 1) Missing condition in matcher for dyanmic tensor 2) If the node is marked as can_be_optimized = true at build time and then turned out to false at runtime, the kernel compilation has been skipped becuaes it was checking node->can_be_optimized => To resolve this issue, added can_be_optimzied to impl_param and let the impl create check can_be_optimized in impl_param instead of that in node. * Fixed primtiive::can_be_optimize to be set through function commit 6ac4ae06aea35c6dbb6eee9667fb5f0f7dc1eaea Author: Mingyu Kim Date: Thu Jun 8 10:27:26 2023 +0900 [docs] typo fix (#17915) commit 1c79f1ab1d188698a4ce5a5228e5d12bdd9dc102 Author: Tatiana Savina Date: Wed Jun 7 18:57:42 2023 +0200 [DOCS] Port release doc fixes (#17939) * [DOCS] Model optimization paragraph fix (#17907) * fix mo guide paragraph * fix format * fix paragraph * remove extra line * fix archive link (#17918) * [DOCS] Add sudo to uninstall (#17929) * add sudo to uninstall * Update uninstalling-openvino.md commit 18862a770b480a5e9cc1989554c0da244a4513f5 Author: Zlobin Vladimir Date: Wed Jun 7 19:20:42 2023 +0400 Update open_model_zoo submodule (#17927) Catch up https://github.com/openvinotoolkit/open_model_zoo/pull/3782 commit 993db4300ce3d19d879e4d0f973470882b4cabcf Author: Edward Shogulin Date: Wed Jun 7 15:31:06 2023 +0100 [CPU] Quantized MHA extension for SmoothQuant (#17906) commit 5f58bef711677a0f21d794000169dfca85dbfca7 Author: Anton Voronov Date: Wed Jun 7 17:15:01 2023 +0400 [CPU] gemm convolution: fixed bias offset (#17357) commit f3e680ed2fa799f3be07cbb3453b53641d073997 Author: Georgy Krivoruchko Date: Wed Jun 7 14:17:20 2023 +0400 [TF FE] Workaround for Broadcast/Concat issue with empty tensors (#17864) * Added transformation for Concat * Added test * CI fix * Fixed behavior of the "empty tensor list" test commit 68a5aedd6832f56103ffb96110dc4f60e59ce5aa Author: Tomasz Otoka Date: Wed Jun 7 12:16:28 2023 +0200 Adds configuration file for cspell (#17355) the file for future use with cspell commit cc27122018c95fc501970dbf8fc6f356a52002cd Author: Tomasz Otoka Date: Wed Jun 7 12:13:15 2023 +0200 Adds Python wheel requirements info to docs (#17922) commit 1d1ac3ab73cabff9a5eddb331fd6f2b4a223d712 Author: Ilya Lavrenov Date: Wed Jun 7 14:12:54 2023 +0400 Added cmake_policy call to allow IN_LIST in if() (#17916) commit 5464f71cd83baf1b3438748505540f6e53792475 Author: Pawel Raasz Date: Wed Jun 7 11:28:45 2023 +0200 Add interpolate from all opsets to cpu shape infer (#17875) commit 4977437359310b53cc724e0dff72475d17fa1ca4 Author: hyunback kim Date: Wed Jun 7 16:20:59 2023 +0900 Optimize permute gemm onednn (#17621) * [GPU] Optimized out permute in permute-gemm(onednn) pattern. Permute can be optimized out when permute's in and out are compatible and onednn gemm. Signed-off-by: hyunback commit c2eba2d2d1a440ac59ac7b041c3e657ca84e6e2b Author: Chen Xu Date: Wed Jun 7 13:11:18 2023 +0800 [CPU] Reduce node improve parallelism (#17615) commit 31eb04818de2ba1c4009b6468085c858ac14c931 Author: Wang Wangwang Date: Wed Jun 7 10:31:27 2023 +0800 [AUTO] Support setting log_level from config (#17569) * [AUTO] Support setting log_level from config * Add test cases --------- Co-authored-by: Chen Peter commit 24b55e3b9e18fe846c8dfae86297687f92cbdbff Author: Wanglei Shen Date: Tue Jun 6 22:14:40 2023 +0800 update scheduling core type value (#17771) * update scheduling core type value * update for comments * update for comments * fix code style issue commit eb0ac0c0ae3db967b9d30c45d3165ca4e8fd185b Author: Alexandra Sidorova Date: Tue Jun 6 16:55:01 2023 +0400 [Snippets] Added support of 3D MHA (#17817) commit ac1e0d56dc0beea7c79f8b18cfbd07cbe8675eb5 Author: Nikita Malinin Date: Tue Jun 6 14:19:53 2023 +0200 ENABLE_MMAP property pos (#17896) commit c43ea371f5c4959ef4fed6667e9f4e6bc833dec1 Author: Tatiana Savina Date: Tue Jun 6 12:48:18 2023 +0200 [DOCS] Port release doc fixes to master (#17901) * [DOCS] Change downloads directory link (#17846) * installation link * fix path * change notebooks links (#17857) * fix apt and yum links (#17877) * [DOCS] Fix list and links to POT (#17887) * change link to POT * change header label * fix typo commit f7a54452cd8b7c0f8e72bc3bf4c51c2faa9c914b Author: Ilya Lavrenov Date: Tue Jun 6 09:12:16 2023 +0400 Use tbb from vcpkg (#17891) commit d2e6163f5b64622063cc8d95fd027f0c88695340 Author: Ilya Lavrenov Date: Tue Jun 6 00:23:07 2023 +0400 Fixed compilation with clang (#17890) commit cf3878fc125afa5b05167a0f05b99a7f1c33cc69 Author: Zlobin Vladimir Date: Mon Jun 5 20:31:05 2023 +0400 Work around deprecation error (#17888) For some reason my MSVC gives the following error: C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.35.32215\include\utility(176,5): error C4996: 'ngraph::SlicePlan::SlicePlan': T he nGraph API is deprecated and will be removed in the 2024.0 release. For instructions on transitioning to the new API, please refer to https://docs.openv ino.ai/latest/openvino_2_0_transition_guide.html [C:\Users\vzlobin\r\openvino\build\src\common\transformations\inference_engine_transformations_obj.vcxproj ] C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.35.32215\include\xmemory(680,47): message : see reference to function 'std::pai r,ngraph::SlicePlan>::pair(std::pair,ngraph::SlicePlan> &&)' [C:\Users\ vzlobin\r\openvino\build\src\common\transformations\inference_engine_transformations_obj.vcxproj] C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.35.32215\include\utility(175,5): error C4996: 'ngraph::SlicePlan::SlicePlan': T he nGraph API is deprecated and will be removed in the 2024.0 release. For instructions on transitioning to the new API, please refer to https://docs.openv ino.ai/latest/openvino_2_0_transition_guide.html [C:\Users\vzlobin\r\openvino\build\src\common\transformations\inference_engine_transformations_obj.vcxproj ] C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.35.32215\include\xmemory(680,47): message : see reference to function 'std::pai r,ngraph::SlicePlan>::pair(const std::pair,ngraph::SlicePlan> &)' [C:\U sers\vzlobin\r\openvino\build\src\common\transformations\inference_engine_transformations_obj.vcxproj] commit 596a642d9f4b2d682ceaec84e05b3190622f64d3 Author: Ilya Lavrenov Date: Mon Jun 5 20:12:17 2023 +0400 Install all python build artifacts to a single folder (#17883) commit 4332c2604e1b50d38eaf5bf2204eb9f76da093f6 Author: Karol Blaszczak Date: Mon Jun 5 16:39:19 2023 +0200 DOCS post-release adjustments (#17874) commit 4b7fdd842a3a30fa355ff3cbd0ebdc8c9dadda71 Author: Chen Xu Date: Mon Jun 5 18:52:18 2023 +0800 [CPU] Improve performance in 5D scenario of Reduce node (#17828) commit 81623446f154ccdb3df471f5414703d416f0ce10 Author: Yury Gaydaychuk Date: Mon Jun 5 12:17:54 2023 +0200 [CPU] Align jit and ref offsets handling in DeformableConvolution implementation (#10686) commit 071a6f92fe9bdd6b79d59e9d58fdc877922d9ba2 Author: Roman Zubarev Date: Mon Jun 5 11:14:48 2023 +0100 remove quantization config for vpu (#17507) * remove quantization config for vpu * remove VPU config testcases from test unify scales --------- Co-authored-by: shokinal Co-authored-by: Alexander Kozlov commit 6e8d0b5597899751678429c1612beb3aa81e104c Author: Piotr Krzemiński Date: Mon Jun 5 10:59:12 2023 +0200 [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 commit efd0d27e1ecca490abe8a222b844c041565ebb2c Author: Aleksandr Voron Date: Mon Jun 5 10:58:12 2023 +0200 [CPU] Enable SLT Eltwise tests on ARM (#17713) commit 969afc617fe1c00ae691f7c70b96dd94a4693ec5 Author: Piotr Krzemiński Date: Mon Jun 5 10:55:03 2023 +0200 [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 * [PT FE] Add masks comments, improve mask broadcasting --------- Co-authored-by: Maxim Vafin commit 1acaeedb26767f9a5bdbc7e345f2c86baa9be00f Author: Yury Gaydaychuk Date: Mon Jun 5 10:52:58 2023 +0200 [CPU][Commit slider] Rmtree fixed (#17858) commit e9a2efcb387d288800bf98dc844bfb0b27b64488 Author: Ilya Churaev Date: Mon Jun 5 12:00:04 2023 +0400 [GPU] Fix GPU remote context name initialization (#17850) commit 4e15aef22f45e989f27e9ac70542deafba8f4937 Author: Sergey Shlyapnikov Date: Mon Jun 5 11:21:26 2023 +0400 [GPU] Change priority of CPU implementations (#17829) commit 7a1e940ac00d6e968001c8e1f07313a0b491a099 Author: Sebastian Golebiewski Date: Mon Jun 5 08:16:29 2023 +0200 update-diagram (#17871) commit fd138b6f78f1fdaeae1cd12ca968ed8aaf6f12da Author: Vladimir Paramuzov Date: Mon Jun 5 09:30:22 2023 +0400 [GPU] Better device input memory reuse (#17853) commit ca4c6422ea02ffe637b6ba43ca458c461f3d15cc Author: Asthestarsfalll <72954905+Asthestarsfalll@users.noreply.github.com> Date: Mon Jun 5 11:06:05 2023 +0800 【PaddlePaddle Hackathon 4】add paddle set_value op (#15888) * add set_value op * Support for tensor input * fix shape error * refactor for dynamic shape * update process of target_value_shape and add comments * support arbitrary steps * fix * fix ends_node * fix and add test cases * fix error when slice operation return maximum number in int32 * remove redundant function call * update for minus step * add constraints for minus inputs --------- Co-authored-by: mei, yang commit c1ffeebafc3b1a1913c5d19811d338906640e93d Author: Wanglei Shen Date: Sat Jun 3 17:07:02 2023 +0800 enable CPU map and multiple streams for ARM Linux (#17450) * enable CPU map for ARM Linux based on freqency information * fix code style issue * fix code style issue * remove 'streams = 1' WA for ARM linux * update for typo and comments * update for comments * keep WA * keep WA of streams = 1 for ARM Linux * update num_streams WA for ARM Linux in test case * update for comments * update for comments * update for comments * update for comments * update for merge conflict * update and add test case for MTL commit d12bd8ee077a97a5fb648f6bed10560a428f9d0f Author: Kelvin Choi Date: Sat Jun 3 09:29:02 2023 +0900 [GPU] Apply m_pythondiv for fusing of eltwise div (#17590) commit 0464d0f7e42741e2f9e346301b984bc806470d43 Author: Alina Kladieva Date: Sat Jun 3 00:50:57 2023 +0200 Revert "Stale PRs/Issues action limit extention (#17491)" (#17868) This reverts commit c351335661b5fd4bbfe229fe548a439db237814a. commit 4231b25511da61e1b92b29674d77dd933cb26a53 Author: Yaroslav Torziuk Date: Fri Jun 2 21:59:55 2023 +0200 Add subgroup block reading in softmax_gpu_items_class_optimized.cl (#16223) commit 81fb4a46a16c614cc18e847449b42097189b7f27 Author: Taylor Yeonbok Lee Date: Fri Jun 2 12:39:28 2023 -0700 [GPU] Enable runtime buffer fusing for dynamic shape (#17668) * Initial impl for runtime buffer fusing Passing unittest with static kernel * pass unittest with dynamic impl * Refactor allocate_output * Separate header of buffer fusing * Refactored buffer fusing :: matcher/optimize * More cleanup * Fix crash in dolly * Reset can_be_optimized of primitive_inst when it is not * Fix empty tensor : Primitive with empty data should be skipped * Fix issue in dynamic padding : Static kernel should not contain dynamic padding dims Fix missing reset of update_shape_done_by_other flag * Not to add cache with emtpy kernel for optimized out inst * Fix corner case error in buffer fusing - Shapes of some preds may not be changed, but still needed to do update_impl because 1) paddings are changed 2) output memory should be updated - optimizable impl should not be added to the cache * Allowing reorder & permute_ref to be optimized concat predecessor * Some more fixes : runtime buffer fusing is available only when all preds/concat are dynamic runtime buffer fusing is to be executed only if the node is dynamic * Fix allocate_output parameter called by get_estimated_device_mem_usage according to the new change * Fixed error in cascaded concatt * Need to reinterprete even though the size is same commit a95298fceb0f559b3952d9ba76593bc12205e6ab Author: Marcus van Houdt Date: Fri Jun 2 20:05:57 2023 +0200 Add missing != operator, fixing compilation issue with Visual Studio 17.6 together with /std:c++latest (#17860) commit 2fd7e99526e683f9a9ecb4eed8e86eb0b6a3bf25 Author: Sofya Balandina Date: Fri Jun 2 18:44:54 2023 +0100 [conformance] Add rel pass rate to highlight table (#17783) commit 6d6809c42525ae3258566076688d7cab0a8797a2 Author: Sergey Shlyapnikov Date: Fri Jun 2 16:17:05 2023 +0400 [GPU] Remove clFinish call from USM memory lock function (#17830) commit c770095abe6ce2d90ecd0dfb26998be744af68b6 Author: Edward Shogulin Date: Fri Jun 2 08:47:36 2023 +0100 [LPT] StridedSlice dequantization improvement (#17563) * [LPT] StridedSlice dequantization improvement * review comments: refactoring & simplification commit b9c98765b568f5c5b34188c257fca32563a2a1c5 Author: Chen Peter Date: Fri Jun 2 15:04:33 2023 +0800 Requirements for the HW plugin to integrate with AUTO (#17053) * Requirements for the HW plugin to integrate with AUTO Signed-off-by: Peter Chen * Update property requirements and wording 1. Added purpose for each reqired property 2. Removed autobatching properties 3. Updated wording Signed-off-by: Peter Chen * Add one BA test and update purpose for model_name Signed-off-by: Peter Chen * Add request to ov::compilation_num_threads Signed-off-by: Peter Chen * Add link to intgration with AUTO Signed-off-by: Peter Chen * Wording with API 2.0 Co-authored-by: Ilya Churaev * Try to fix the link * Remove ":doc:" * Add postfix "__" for external link * Apply suggestions from code review Co-authored-by: Tatiana Savina * bash command and multiple devices description update Signed-off-by: Peter Chen --------- Signed-off-by: Peter Chen Co-authored-by: Ilya Churaev Co-authored-by: Tatiana Savina commit d31f14be10916be64a445fb18ecbd6dbc0890f62 Author: bstankix Date: Thu Jun 1 15:28:37 2023 +0200 Add default platform type selection to ov graphs (#17844) commit e848609551ec02ffb06193972b278e9ef9aa2933 Author: Karol Blaszczak Date: Thu Jun 1 15:16:10 2023 +0200 DOCS homepage update (#17842) commit 7f88a49cda2f934f6f8be622ece18275a64b8f56 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu Jun 1 14:11:05 2023 +0200 Update networkx requirement from <=2.8.8 to <3.1.0 in /tools/mo (#15293) commit 713c566441aff64d0db5882932f468d0a91b24d3 Author: Piotr Krzemiński Date: Thu Jun 1 14:04:27 2023 +0200 [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 * [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 commit 08089e3a3a9b4c7491eec427bc169094349ca070 Author: Ilya Lavrenov Date: Thu Jun 1 15:23:08 2023 +0400 Use 2023.0.0 debian packages on CI (#17840) commit e27290c8295e70ef2ba23d98bf99a9e69c3be58e Author: Maciej Kwapulinski Date: Thu Jun 1 13:21:54 2023 +0200 [GNA] convertFunctionToICNNNetwork operation performance improovement (#17685) * make CNNLayerCreator be persistent accross single convertFunctionToICNNNetwork operation * [GNA] RR comments applied * [GNA] RR comments applied commit 732240f038a88a330b834df7a58b5f13c9922d96 Author: Katarzyna Mitrus Date: Thu Jun 1 13:21:43 2023 +0200 [Pad-12] Introduce PadBase and Pad-12 operation (#17796) * Introduce PadBase * Update ov scope name * Introduce Pad-12 * Common type_prop Pad tests * Init Pad-12 ref tests * Add Pad reference tests * attr and op check tests * Move eval and clone inputs from PadBase * Init opset12 * Headers clean up * Update shape_inference map for CPU * Update Pad evaluates to use ov::TensorVetor * Update shape infer map with Pads * Fix namespace * Update op check test * Add common Pad shape_inference tests * Reuse PadBase shape_infer commit e9cb787f798da7cddd0545cf0edc6f9562d36fb9 Author: Ilya Lavrenov Date: Thu Jun 1 15:04:32 2023 +0400 Use OpenCL from CCI (#17839) commit 15320b22ae6479cd2de17936555263a85dab26a5 Author: Yury Gaydaychuk Date: Thu Jun 1 12:20:30 2023 +0200 [CPU][Tools] wa for tmp directory handling in linux (#17824) commit de134c6c714a67fbefee0273c4612c7297b0f865 Author: Alexandra Sidorova Date: Thu Jun 1 13:51:55 2023 +0400 [Snippets] Refactored work with Loop ID (#17680) commit d13bcbe0e907a660c6e0090f9dc18949bee43fae Author: Xuejun Zhai Date: Thu Jun 1 16:52:47 2023 +0800 Fix C API registers unit test failed (#17800) * Fix C API registers unit test failed Signed-off-by: Zhai, Xuejun * Fix compile error in macos Signed-off-by: Zhai, Xuejun * Fix CI format issue Signed-off-by: Zhai, Xuejun * using the getExecutableDirectory() func from openvino::utils Signed-off-by: Zhai, Xuejun --------- Signed-off-by: Zhai, Xuejun commit 71b2d6f994b461dd4a6591da89da2e8c3b0f7f12 Author: Ilya Churaev Date: Thu Jun 1 12:50:56 2023 +0400 Deprecate ExecutableNetwork and InferRequest API (#17801) * Deprecate ExecutableNetwork and InferRequest API * Fixed some warnings * Fixed some warnings * Try to fix documentation * Try to skip documentation warnings commit 5d013d8ae57e7985c4f0c7b7e044d8517bf5e594 Author: Ilya Churaev Date: Thu Jun 1 12:47:55 2023 +0400 Deprecate legacy precisions and layouts (#17803) * Deprecate legacy precisions and layouts * Suppress some warnings * Fixed some warnings commit 369f51cf50d5954c1b0e4c42fcae945d7a030ab2 Author: Ilya Churaev Date: Thu Jun 1 12:44:28 2023 +0400 Mark as deprecated nGraph API (#17647) * Mark as deprecated nGraph API * Fixed code style * Added IN_OV_LIBRARY define * Suppress warnings for log * Suppress warning * Updated nGraph headers * Fixed build for macOS * Fixed lpt and snippets * Fixed build all on macOS * Suppress some warnings * Fixed some new warnings * Fixed new warnings * Try to fix some warnings * More warnings * Soome change * Suppress more warnings * Suppress warnings for transformations * Suppress warnings for LPT * One more fix * Suppress more warnings * Try to fix opset error * Remove opset constructor * Cannot fix opset warning * Suppress warnings for offline transfromations * Fixed some warnings for Windows * Fixed code style * Suppress some warnings for onnx FE * Revert "Suppress some warnings for onnx FE" This reverts commit 75d23b64fc7333afddd68a8c96ded694167b2425. * Revert "Fixed code style" This reverts commit c6eba6311663a29c6338ade435e10bf55dd51482. * Revert "Fixed some warnings for Windows" This reverts commit 23d7ed88b694f47edfa331a6267d6795edd98438. * Revert "Suppress warnings for offline transfromations" This reverts commit 0b9f6317bff0d489cee6b30e064bad7d04367ae9. * Revert "Cannot fix opset warning" This reverts commit 19ea658639d64bb2020cfb8424ea43ffa9a2dbf7. * Revert "Remove opset constructor" This reverts commit 06afb1bc2037156bfb65b6b58a2b732e19a74ce5. * Revert "Suppress warnings for LPT" This reverts commit 58b1c0f5a041e099cd715ebac28f8f96fead936a. * Revert "Suppress warnings for transformations" This reverts commit f8bb9814a1d160c5c770f399489936f228f24c75. * Revert "Suppress more warnings" This reverts commit f9f0da9acb566200465a9540ca91bc9ff33cc825. * Revert "Soome change" This reverts commit e545d4984ef6eac60d8c2ce6b1d6ee805072bd28. * Remove deprecation for ngraph::OpSet and FactoryRegistry commit fa6b667423374eaaab3c3d2ff6bd59f9ded533d6 Author: Ilya Lavrenov Date: Thu Jun 1 12:28:47 2023 +0400 Update archive names for 2023.0 release (#17835) commit 070a7094ee1790177d4714c906b08978188db628 Author: Anton Voronov Date: Thu Jun 1 12:26:06 2023 +0400 [DOC] cpu documentation fixes (#17815) commit 26d43ebcbda10e3aae72cbf324a91bd2f6efb9f7 Author: Ilya Lavrenov Date: Thu Jun 1 12:24:02 2023 +0400 Updated badges to reflect new release 2023.0 (#17834) commit 3d7b8d7e22c9ee831edf5e36caa020f2563ed1d6 Author: Andrei Gorbachev Date: Thu Jun 1 07:51:48 2023 +0100 [GPU] fix incorrect deformable_group_idx calculation (#17759) commit e7c9450acb8e8cf6a687ca87e5fa8e562eb60434 Author: Tomasz Dołbniak Date: Thu Jun 1 08:49:02 2023 +0200 GroupNormalization core op (#17781) commit 55aa932130a53a837a2fc70b29652f1641c685c5 Author: Ilya Lavrenov Date: Thu Jun 1 10:31:10 2023 +0400 Added vcpkg build to CI (#17808) commit d11597f2648ee8942d09a5fbe02b3480e116e8c5 Author: Vladimir Paramuzov Date: Thu Jun 1 09:45:30 2023 +0400 [GPU] Functional fixes for nvidia (#17735) commit a2e7e3f574bb5fca7a7b0f56a5be7a2596c5cf63 Author: Haiqi Pan Date: Thu Jun 1 10:22:08 2023 +0800 [C API] some contents missed in doxygen (#17671) * remove @param and separate line * separate line of ov_remote_context_free * fix code style * Update src/bindings/c/include/openvino/c/ov_remote_context.h Co-authored-by: Chen Peter * add ... * add ... --------- Co-authored-by: Chen Peter commit 18792b8531de1ad83774daec9148e3f521c33c25 Author: Mateusz Mikolajczyk Date: Wed May 31 22:26:39 2023 +0200 [PT FE] Fix aten::squeeze translation + add tests for aten::slice (#17584) * Fix squeeze compatibility * Fix issue in remainder causing model to fail * Add tests for slice * Modify remainder to support int + add type tests * Apply requested changes * Add comment commit 0a52640f51b1e8293d918e249c491f0f76c17362 Author: Nikolay Shchegolev Date: Wed May 31 21:05:59 2023 +0400 [CPU] GridSample tests threshold. (#17782) commit 6b11eaadb1a9839d38e70476bc5e887d7c7abc9d Author: Sebastian Golebiewski Date: Wed May 31 17:53:22 2023 +0200 [DOCS] `convert_model()` as a default conversion path (#17454) commit a8d3a0f1a5e3b187f8ef9c41d3c7372687db928a Author: Pawel Raasz Date: Wed May 31 17:33:48 2023 +0200 Relax sizes and scales check for (#17811) commit 00a2ce0ca82646ae4472823c52070430863e0174 Author: Vladislav Golubev Date: Wed May 31 16:25:59 2023 +0200 [CPU] Skip some DefConv test cases (#17810) commit ea6ee349296223a3ccdacbc24bfd62b0b0f5963c Author: Sebastian Golebiewski Date: Wed May 31 15:47:24 2023 +0200 [DOCS] Updating Tutorials (#17769) commit b8347c709d4880465740fdce80b511fa5acc1f6c Author: Vladislav Golubev Date: Wed May 31 15:39:17 2023 +0200 [CPU] Graph::DropNode fix (#17702) commit 36fd514a2ac798673b3c2d1dd664ae08ef33bb96 Author: OK Date: Wed May 31 16:38:57 2023 +0300 Validation: Test AUTO plugin timetests (#17508) * Validation: Test AUTO plugin * config * Add debug logs against AUTO * Iteration * iteration * iteration * iteration * iter * iteration * iteration * iteration * iteration --------- Co-authored-by: Daria Ilina commit 0b21873a2356bce517116582e3e189c7c04e6604 Author: Vladislav Golubev Date: Wed May 31 14:13:44 2023 +0200 [CPU] RNN: Shape checks are relaxed (#17724) commit 1d69898669540b7b4f7d57fd5cf6a672ee863293 Author: Nadezhda Ageeva Date: Wed May 31 15:13:01 2023 +0400 [HETERO]: Avoid duplicated results (#17725) * [HETERO]: Avoid duplicated results * Code style commit fb807183b28e328f7b0ac61016d677f0e8b85c0c Author: Karol Blaszczak Date: Wed May 31 12:39:10 2023 +0200 Updated install docs for 2023.0 (#17764) (#17807) port: #17764 authored by @ilya-lavrenov commit e52d848b2ca11428fbe5b652df4a1379d26aaa11 Author: Vladislav Golubev Date: Wed May 31 12:25:17 2023 +0200 [CPU] Deconv dummy shape calculation: validate upper bound only if it is defined (#17690) commit 51a97077fd3fdf5aca76a99e8418065a0883c0de Author: Ekaterina Aidova Date: Wed May 31 14:07:24 2023 +0400 [PT FE]: support flip operation (#17705) * [PT FE]: support flip operation * more tests commit 688fcbb2642fb4b272fe7f1db047d2b2a848828b Author: Ekaterina Aidova Date: Wed May 31 14:07:12 2023 +0400 [PT FE]: support aten::cdist and aten::pairwise_distance (#17718) * [PT FE]: support aten::cdist and aten::pairwise_distance * p and eps non-const commit c4ee67b68a96ec4f6ac61eac9c1cc2ada39ed861 Author: Karol Blaszczak Date: Wed May 31 12:01:55 2023 +0200 DOCS operation support articles update (#17449) conformance table added ARM merged with CPU precision support and layout tables removed from the overview device article (info available in device articles) commit 133ec1942fddfd68a1d617d73156133fbd41b464 Author: Mingyu Kim Date: Wed May 31 18:39:19 2023 +0900 Typo fix (#17723) commit a112140cf07160bf79b7b87575990c6fa01188b5 Author: Maciej Smyk Date: Wed May 31 11:27:20 2023 +0200 [DOCS] Link adjustment for dev docs + fix to build.md CPU link for master (#17744) * link-update-1 * link update * Update build.md * dl workbench * Update README.md commit c4f0ac91b41ed9cbf9bf9369060120c7274a50e7 Author: Ivan Vikhrev Date: Wed May 31 12:04:12 2023 +0300 Align sync mode fps measurement in py benchmark_app with cpp benchmark_app (#17773) commit 8b6be7269d21374fc546ff056ddce3fed91684f6 Author: Karol Blaszczak Date: Wed May 31 10:51:43 2023 +0200 [DOCS] benchmark 23.0 update (#17789) commit c5589b844e2b8ce6ae66095680ceff758ec830c5 Author: Xiping Yan Date: Wed May 31 15:58:29 2023 +0800 [CPU]Remove warning suppression '-Wno-sign-compare' and fix warnings (#16476) * fix some warning sign-compare 1: get_length() sometime return dimension, sometime return static_dimension(template param), all convert to int64_t for comparing; src/core/include/openvino/core/dimension.hpp:28 value_type=int64_t; src/plugins/intel_cpu/src/utils/shape_inference/static_dimension.hpp:24 value_type = size_t; 2: auto default = int; for loop and const declaration; 3: sign and no-sign compare, compiler will convert them to no-sign to compare automatically; So recommend to static_cast; Signed-off-by: xipingya * - size_t brg0BaseIdx = -1; + int64_t brg0BaseIdx = -1; And some test case sign no-sign comparison. * Fix new warnings after rebase. Signed-off-by: Yan, Xiping * Update based on maxnick review. Signed-off-by: xipingya * Process latest comments. Signed-off-by: Yan, Xiping * Change embIndex from int to size_t Signed-off-by: Yan, Xiping * 1: Revert lastNumSegments_, segmentIds_ to int 2: Initialize size_t brg1BaseIdx = std::numeric_limits::max(); Signed-off-by: Yan, Xiping * Simplify this comparing. - indexes.push_back(std::max(idx - 1, 0u)); + indexes.push_back(0u == idx ? 0 : idx - 1); Signed-off-by: Yan, Xiping * Fix arm build warning. Signed-off-by: xipingya * Fix ARM plugin build fail issue. Signed-off-by: xipingya * Fix new warning Signed-off-by: xipingya * outConf.inPlace() maybe is -1 Signed-off-by: xipingya --------- Signed-off-by: xipingya Signed-off-by: Yan, Xiping commit ef767d00ce89379a648ea7e4fd510e96ca19395e Author: Wanglei Shen Date: Wed May 31 15:31:56 2023 +0800 [DOC] Add multi threading for 2023.0 release in CPU plugin document (#17638) commit 8d4e953c81e42ea2883c820bd8f4f7c5036fcba8 Author: Anton Voronov Date: Wed May 31 10:37:32 2023 +0400 [DOC][CPU] Documentation update (#17784) commit 39ac6debf0e800a2969f31fa58bc1e28ef5b1d63 Author: Wanglei Shen Date: Wed May 31 09:44:19 2023 +0800 support numactl on Linux in multi-threading 2.0 (#17209) * support numactl on Linux in multi-threading 2.0 * update cache file reader * fix warning * keep change for numactl support only * keep change for numactl support only * keep change for numactl support only * keep change for numactl support only * keep change for numactl support only * fix typo * update for comments * fix code style issue * update is_cpu_map_available() * update for comments * update for comments * update for comments commit 95b26e3c1b5d6123c6dde7797756391a5c64e0d8 Author: bstankix Date: Tue May 30 16:11:14 2023 +0200 [DOCS] Add ability to build notebooks from local files (#17797) * Add build notebooks from local files * Add local notebook files v0.1.0-latest/20230529220816 commit fd8acc1627d557058c5592fe85ab135e0b0f8242 Author: Egor Duplenskii Date: Tue May 30 16:00:43 2023 +0200 [CPU] Fix assert in oneDNN dw conv (#17634) commit 2947693d7e6aa961e2ae573f4f2c74d295a8a66f Author: Anastasia Kuporosova Date: Tue May 30 13:47:40 2023 +0200 [PyOV] Add objects representations (#17519) commit 03ea5559cd6e9f0b29f76927b20275db098dd711 Author: Mikhail Ryzhov Date: Wed Jun 7 17:32:10 2023 +0200 Update src/plugins/intel_gna/src/transformations/transpose_2d.cpp Co-authored-by: Szymon Irzabek commit e4c2bede8af81aff09cd79e406071d604e5135e9 Author: Mikhail Ryzhov Date: Wed Jun 7 17:31:51 2023 +0200 Update src/plugins/intel_gna/src/transformations/transpose_2d.hpp Co-authored-by: Szymon Irzabek commit 1ac37f619d4ca52db509b2341a1a449e7885b7cd Author: Mikhail Ryzhov Date: Wed Jun 7 17:31:41 2023 +0200 Update src/plugins/intel_gna/src/transformations/transpose_2d.cpp Co-authored-by: Szymon Irzabek commit 70672ac7188bc8eacbde89d642e57cc5f6ea0138 Author: Mikhail Ryzhov Date: Wed May 17 15:12:35 2023 +0200 clang fixes commit d9843a562be729aff5255ad6342d9abac8cc5301 Author: Mikhail Ryzhov Date: Wed May 17 13:58:21 2023 +0200 transpose 2d # Conflicts: # src/plugins/intel_gna/src/gna_transformations_pipeline.cpp commit fd35bad32b291832430c6b3c1ece67a18e79c6e2 Author: Mikhail Ryzhov Date: Wed Jun 28 22:28:08 2023 +0200 clang fixes commit f96a77778b302d87fb54739e4269b35de846caa0 Author: Mikhail Ryzhov Date: Wed Jun 28 19:15:20 2023 +0200 added tests commit 1783f642de6a950882d44d643b0d2e8aee8ec1a5 Author: Mikhail Ryzhov Date: Wed Jun 28 14:21:57 2023 +0200 rename transformation commit 8eed68e2f0e7b70531ed544d7b7ca844d10f92ea Author: Mikhail Ryzhov Date: Mon Jun 19 15:28:10 2023 +0200 additional check commit 061ff18bd9f11004b0dc6063c9298988f4cdee0d Author: Mikhail Ryzhov Date: Tue Jun 13 15:09:51 2023 +0200 Fixed fused indexes commit b7a3ed0ff37ede98961874c13051bdfefb8e4725 Merge: 742435a232 a106eb0d75 Author: Mikhail Ryzhov Date: Mon Jun 12 09:51:53 2023 +0200 Merge branch 'master' into feature/2d_transpose commit 742435a2328313a59de5d38ab681b5e0c522991d Author: Mikhail Ryzhov Date: Wed Jun 7 17:32:10 2023 +0200 Update src/plugins/intel_gna/src/transformations/transpose_2d.cpp Co-authored-by: Szymon Irzabek commit 8fbdbeaab1087db4dcf7e0292c437c9e97e737ab Author: Mikhail Ryzhov Date: Wed Jun 7 17:31:51 2023 +0200 Update src/plugins/intel_gna/src/transformations/transpose_2d.hpp Co-authored-by: Szymon Irzabek commit 7d88b1444f7742fb5a339ae43acd200472ec9a26 Author: Mikhail Ryzhov Date: Wed Jun 7 17:31:41 2023 +0200 Update src/plugins/intel_gna/src/transformations/transpose_2d.cpp Co-authored-by: Szymon Irzabek commit 51c3fd3468836326a62cb572f7b54c7e357efd43 Merge: 1461423933 77bd72081f Author: Mikhail Ryzhov Date: Mon May 22 12:34:03 2023 +0200 Merge branch 'master' into feature/2d_transpose commit 1461423933bb4443abab9ac2476c2ac8e31d07fa Author: Mikhail Ryzhov Date: Wed May 17 15:12:35 2023 +0200 clang fixes commit 001f34788c9a95e4cebaf5b75a0670a79a69e935 Author: Mikhail Ryzhov Date: Wed May 17 13:58:21 2023 +0200 transpose 2d # Conflicts: # src/plugins/intel_gna/src/gna_transformations_pipeline.cpp --- .../intel_gna/src/backend/gna_limitations.cpp | 3 + .../src/gna_transformations_pipeline.cpp | 2 + .../handle_transposes_around_matmul.cpp | 3 +- .../transformations/transpose_compress.cpp | 94 ++++++++++++ .../transformations/transpose_compress.hpp | 39 +++++ .../transformations/transpose_compress.cpp | 144 ++++++++++++++++++ 6 files changed, 284 insertions(+), 1 deletion(-) create mode 100644 src/plugins/intel_gna/src/transformations/transpose_compress.cpp create mode 100644 src/plugins/intel_gna/src/transformations/transpose_compress.hpp create mode 100644 src/plugins/intel_gna/tests/unit/transformations/transpose_compress.cpp diff --git a/src/plugins/intel_gna/src/backend/gna_limitations.cpp b/src/plugins/intel_gna/src/backend/gna_limitations.cpp index f1b5dce58b9806..27d85be5eb5922 100644 --- a/src/plugins/intel_gna/src/backend/gna_limitations.cpp +++ b/src/plugins/intel_gna/src/backend/gna_limitations.cpp @@ -753,6 +753,9 @@ bool Limitations::is_transpose_supported(const ov::Shape& shape) { max_input_dim <= kTransposeMaxSize) { return true; } + } else if (squeezed_shape.size() == 1) { + // it means that transpose has only one valuable dimension (!=1) + return true; } return false; } diff --git a/src/plugins/intel_gna/src/gna_transformations_pipeline.cpp b/src/plugins/intel_gna/src/gna_transformations_pipeline.cpp index 8f382d4c333bfd..825eb7ac5007a8 100644 --- a/src/plugins/intel_gna/src/gna_transformations_pipeline.cpp +++ b/src/plugins/intel_gna/src/gna_transformations_pipeline.cpp @@ -62,6 +62,7 @@ #include "transformations/split_eltwise.hpp" #include "transformations/substitute_softsign.hpp" #include "transformations/swap_input_matmul_gna.hpp" +#include "transformations/transpose_compress.hpp" #include "transformations/transpose_sinking/ts_concat.hpp" #include "transformations/transpose_sinking/ts_fuse.hpp" #include "transformations/transpose_sinking/ts_general.hpp" @@ -139,6 +140,7 @@ void TransformationsPipeline::apply(const std::shared_ptr& model, manager.register_pass(); manager.register_pass(); manager.register_pass(); + manager.register_pass(); manager.register_pass(); manager.register_pass(); manager.register_pass(); diff --git a/src/plugins/intel_gna/src/transformations/handle_transposes_around_matmul.cpp b/src/plugins/intel_gna/src/transformations/handle_transposes_around_matmul.cpp index 498f973ba0320d..c00bec4ea84586 100644 --- a/src/plugins/intel_gna/src/transformations/handle_transposes_around_matmul.cpp +++ b/src/plugins/intel_gna/src/transformations/handle_transposes_around_matmul.cpp @@ -190,7 +190,8 @@ HandleTransposeBeforeMatMul::HandleTransposeBeforeMatMul() { } if (prev_node) { - if (Limitations::is_transpose_supported(prev_node->get_output_shape(0))) { + if (graph_utils::is_shape_2d(prev_node->get_output_shape(0)) && + Limitations::is_transpose_supported(prev_node->get_output_shape(0))) { InsertTranspose(prev_node, matmul_node->get_friendly_name(), true); } } diff --git a/src/plugins/intel_gna/src/transformations/transpose_compress.cpp b/src/plugins/intel_gna/src/transformations/transpose_compress.cpp new file mode 100644 index 00000000000000..bd13b1d788be07 --- /dev/null +++ b/src/plugins/intel_gna/src/transformations/transpose_compress.cpp @@ -0,0 +1,94 @@ +// Copyright (C) 2023 Intel Corporation +// SPDX-License-Identifier: Apache-2.0 +// + +#include "transformations/transpose_compress.hpp" + +#include "common/graph_utils.hpp" +#include "openvino/cc/ngraph/itt.hpp" +#include "openvino/opsets/opset11.hpp" +#include "openvino/pass/pattern/op/wrap_type.hpp" + +using namespace ov::opset11; +using namespace ov::pass; +using namespace ov::intel_gna::pass; + +namespace { + +inline std::vector fix_indexes(const std::vector& ids) { + std::vector ids_fixed(ids.size()); + std::iota(ids_fixed.begin(), ids_fixed.end(), 0); + stable_sort(ids_fixed.begin(), ids_fixed.end(), [&ids](size_t a, size_t b) { + return ids[a] < ids[b]; + }); + return ids_fixed; +} + +} // namespace + +TransposeCompress::TransposeCompress() { + MATCHER_SCOPE(TransposeCompress); + + auto transpose_const = pattern::wrap_type(); + auto transpose = + pattern::wrap_type({pattern::any_input(), transpose_const}, [](const ov::Output& node) { + return !limitations::Limitations::is_transpose_supported(node.get_node_shared_ptr()); + }); + + ov::matcher_pass_callback callback = [=](pattern::Matcher& m) { + const auto& pattern_map = m.get_pattern_value_map(); + const auto transpose_order = as_type_ptr(pattern_map.at(transpose_const).get_node_shared_ptr()); + const auto transpose_node = pattern_map.at(transpose).get_node_shared_ptr(); + const ov::Shape& shape = transpose_node->get_input_shape(0); + const ov::Shape& shape_out = transpose_node->get_output_shape(0); + ov::AxisVector axis = transpose_order->get_axis_vector_val(); + ov::AxisVector axis_compressed = {}; + ov::Shape shape_fused_out = {}; + for (const size_t& axis : axis) { + if (axis_compressed.empty() || (axis - axis_compressed.back()) != 1) { + axis_compressed.push_back(axis); + shape_fused_out.push_back(shape[axis]); + } else { + shape_fused_out.back() *= shape[axis]; + } + } + // check that fusing is required + if (axis.size() == axis_compressed.size()) { + return false; + } + + // correct fused indexes, e.g. (2, 0, 3) -> (1, 0, 2) + ov::AxisVector axis_fused_fixed = fix_indexes(axis_compressed); + size_t fused_sz = axis_fused_fixed.size(); + // Restore input shape + ov::Shape shape_fused_in(fused_sz); + for (size_t i = 0; i < fused_sz; ++i) { + shape_fused_in[i] = shape_fused_out[axis_fused_fixed[i]]; + } + + if (!limitations::Limitations::is_transpose_supported(shape_fused_in)) { + return false; + } + + // Reshape in + auto reshape_in_const = + std::make_shared(ov::element::i32, ov::Shape{shape_fused_in.size()}, shape_fused_in); + auto reshape_in = std::make_shared(transpose_node->input_value(0), reshape_in_const, false); + // Transpose + auto transpose_const = + std::make_shared(ov::element::i8, ov::Shape{axis_fused_fixed.size()}, axis_fused_fixed); + auto transpose = std::make_shared(reshape_in, transpose_const); + // Reshape out + auto reshape_out_const = std::make_shared(ov::element::i32, ov::Shape{shape_out.size()}, shape_out); + auto reshape_out = std::make_shared(transpose, reshape_out_const, false); + // + ov::replace_output_update_name(transpose_node->output(0), reshape_out->output(0)); + ov::copy_runtime_info({transpose_node, transpose_order}, + {transpose, transpose_const, reshape_in, reshape_in_const}); + + return true; + }; + + auto m = std::make_shared(transpose, matcher_name); + this->register_matcher(m, callback); +} diff --git a/src/plugins/intel_gna/src/transformations/transpose_compress.hpp b/src/plugins/intel_gna/src/transformations/transpose_compress.hpp new file mode 100644 index 00000000000000..c1f142289e5d21 --- /dev/null +++ b/src/plugins/intel_gna/src/transformations/transpose_compress.hpp @@ -0,0 +1,39 @@ +// Copyright (C) 2023 Intel Corporation +// SPDX-License-Identifier: Apache-2.0 +// + +#pragma once + +#include "openvino/pass/graph_rewrite.hpp" + +namespace ov { +namespace intel_gna { +namespace pass { + +/** + * @brief Reduce the rank of Transpose shape by fusing dimensions + * [A, B, C, D] [A, B, C, D] + * | | + * Transpose Reshape + * | | + * [A, D, B, C] [A, B*C, D] + * | | + * | Transpose + * | -> | + * | <- [A, D, B*C] + * | | + * | Reshape + * | | + * | [A, D, B, C] + * | | + * Any Layer Any Layer + */ +class TransposeCompress : public ov::pass::MatcherPass { +public: + OPENVINO_RTTI("TransposeCompress", "0"); + TransposeCompress(); +}; + +} // namespace pass +} // namespace intel_gna +} // namespace ov diff --git a/src/plugins/intel_gna/tests/unit/transformations/transpose_compress.cpp b/src/plugins/intel_gna/tests/unit/transformations/transpose_compress.cpp new file mode 100644 index 00000000000000..9b5617a917c7e7 --- /dev/null +++ b/src/plugins/intel_gna/tests/unit/transformations/transpose_compress.cpp @@ -0,0 +1,144 @@ +// Copyright (C) 2023 Intel Corporation +// SPDX-License-Identifier: Apache-2.0 +// + +#include "transformations/transpose_compress.hpp" + +#include + +#include "common_test_utils/ngraph_test_utils.hpp" +#include "openvino/core/model.hpp" +#include "openvino/opsets/opset12.hpp" + +using namespace ov::opset12; + +namespace transpose_compress_test { + +struct TestData { + ov::Shape shape_src; + ov::AxisVector tr_order_src; + ov::Shape shape_ref; + ov::AxisVector tr_order_ref; +}; + +typedef std::tuple // Transpose order + test_params; + +class TransposeCompressTest : public CommonTestUtils::TestsCommon, public ::testing::WithParamInterface { +public: + static std::string getTestCaseName(const testing::TestParamInfo& obj) { + TestData test_shapes; + std::tie(test_shapes) = obj.param; + + std::ostringstream result; + result << "InputShape=" << test_shapes.shape_src << "_"; + result << "TransposeOrder=" << test_shapes.tr_order_src << "_"; + + return result.str(); + } + + virtual void set_test_model() { + auto param = std::make_shared(m_type, m_test_shapes.shape_src); + + auto transpose_const = std::make_shared(ov::element::i32, + ov::Shape{m_test_shapes.tr_order_src.size()}, + m_test_shapes.tr_order_src); + auto transpose = std::make_shared(param, transpose_const); + + m_shape_out = transpose->get_output_shape(0); + + auto result = std::make_shared(transpose); + m_model_test = + std::make_shared(ov::ResultVector{result}, ov::ParameterVector{param}, "transpose_compress"); + } + + virtual void set_ref_model() { + auto param = std::make_shared(m_type, m_test_shapes.shape_src); + + auto shape_in_const = std::make_shared(ov::element::i32, + ov::Shape{m_test_shapes.shape_ref.size()}, + m_test_shapes.shape_ref); + auto shape_in = std::make_shared(param, shape_in_const, false); + + auto transpose_const = std::make_shared(ov::element::i8, + ov::Shape{m_test_shapes.tr_order_ref.size()}, + m_test_shapes.tr_order_ref); + auto transpose = std::make_shared(shape_in, transpose_const); + + auto shape_out_const = std::make_shared(ov::element::i32, ov::Shape{m_shape_out.size()}, m_shape_out); + auto shape_out = std::make_shared(transpose, shape_out_const, false); + + auto result = std::make_shared(shape_out); + m_model_ref = + std::make_shared(ov::ResultVector{result}, ov::ParameterVector{param}, "transpose_compress"); + } + + void SetUp() override { + std::tie(m_test_shapes) = this->GetParam(); + set_test_model(); + set_ref_model(); + }; + + void Validate() { + ov::pass::Manager m; + m.register_pass(); + m.register_pass(); + m.run_passes(m_model_test); + + check_rt_info(m_model_test); + + const FunctionsComparator func_comparator = + FunctionsComparator::with_default().enable(FunctionsComparator::ATTRIBUTES); + const FunctionsComparator::Result result = func_comparator(m_model_test, m_model_ref); + + ASSERT_TRUE(result.valid) << result.message; + } + + void Run() { + SetUp(); + Validate(); + } + +public: + TestData m_test_shapes; + ov::Shape m_shape_out; + ov::element::Type m_type = ov::element::f32; + std::shared_ptr m_model_test; + std::shared_ptr m_model_ref; +}; + +class TransposeCompressNegTest : public TransposeCompressTest { + void set_ref_model() override { + m_model_ref = m_model_test->clone(); + } +}; + +TEST_P(TransposeCompressTest, CompareWithRefs) { + Run(); +} + +TEST_P(TransposeCompressNegTest, CompareWithRefs) { + Run(); +} + +const std::vector test_shapes = {{{1, 2, 3}, {1, 2, 0}, {1, 6}, {1, 0}}, + {{1, 2, 4}, {1, 2, 0}, {1, 8}, {1, 0}}, + {{2, 2, 4}, {1, 2, 0}, {2, 8}, {1, 0}}, + {{2, 2, 4, 4}, {2, 3, 0, 1}, {4, 16}, {1, 0}}}; + +const std::vector test_neg_shapes = {{{1, 2, 3, 4}, {1, 0, 2, 3}, {}, {}}, + {{1, 2, 3, 4}, {0, 2, 1, 3}, {}, {}}, + {{1, 2, 3, 4}, {2, 3, 0, 1}, {}, {}}, + {{10, 20}, {1, 0}, {}, {}}}; + +INSTANTIATE_TEST_SUITE_P(smoke_transpose_compress_test, + TransposeCompressTest, + ::testing::Combine(::testing::ValuesIn(test_shapes)), + TransposeCompressTest::getTestCaseName); + +INSTANTIATE_TEST_SUITE_P(smoke_transpose_compress_test, + TransposeCompressNegTest, + ::testing::Combine(::testing::ValuesIn(test_neg_shapes)), + TransposeCompressNegTest::getTestCaseName); + +} // namespace transpose_compress_test