From e942b5ddcf5b74ffb8c497601af91121089daceb Mon Sep 17 00:00:00 2001 From: Ilya Lavrenov Date: Wed, 29 Nov 2023 13:29:22 +0400 Subject: [PATCH] [openvino] 2023.2.0 release (#35125) * openvino: 2023.2.0 version * updated version database * opencv: updated openvino usage * updated version database * test * vdb --------- Co-authored-by: Frank <1433351828@qq.com> Co-authored-by: Monica --- ports/opencv4/vcpkg.json | 9 +- ports/openvino/001-disable-tools.patch | 6 +- ports/openvino/002-git-version.patch | 31 + ports/openvino/003-fix-find-onnx.patch | 13 - .../openvino/004-compilation-with-cpp17.patch | 16 - ports/openvino/005-tflite-search.patch | 12 - ports/openvino/007-macos-14.patch | 12 - ports/openvino/008-dynamic-protubuf.patch | 156 ---- ports/openvino/009-tensorflow-proto-odr.patch | 746 ------------------ ports/openvino/portfile.cmake | 47 +- ports/openvino/usage | 6 + ports/openvino/vcpkg.json | 12 +- versions/baseline.json | 6 +- versions/o-/opencv4.json | 5 + versions/o-/openvino.json | 5 + 15 files changed, 82 insertions(+), 1000 deletions(-) create mode 100644 ports/openvino/002-git-version.patch delete mode 100644 ports/openvino/003-fix-find-onnx.patch delete mode 100644 ports/openvino/004-compilation-with-cpp17.patch delete mode 100644 ports/openvino/005-tflite-search.patch delete mode 100644 ports/openvino/007-macos-14.patch delete mode 100644 ports/openvino/008-dynamic-protubuf.patch delete mode 100644 ports/openvino/009-tensorflow-proto-odr.patch diff --git a/ports/opencv4/vcpkg.json b/ports/opencv4/vcpkg.json index 87b25cdec1..067849b02b 100644 --- a/ports/opencv4/vcpkg.json +++ b/ports/opencv4/vcpkg.json @@ -1,7 +1,7 @@ { "name": "opencv4", "version": "4.8.0", - "port-version": 10, + "port-version": 11, "description": "computer vision library", "homepage": "https://github.com/opencv/opencv", "license": "Apache-2.0", @@ -251,7 +251,7 @@ }, "openvino": { "description": "OpenVINO support for OpenCV DNN", - "supports": "!uwp", + "supports": "!uwp & !x86", "dependencies": [ { "name": "opencv4", @@ -267,8 +267,7 @@ "auto", "cpu", "hetero" - ], - "platform": "!uwp" + ] }, { "name": "openvino", @@ -276,7 +275,7 @@ "features": [ "gpu" ], - "platform": "x64 & !(osx | uwp) & !static" + "platform": "x64 & !(osx | uwp)" } ] }, diff --git a/ports/openvino/001-disable-tools.patch b/ports/openvino/001-disable-tools.patch index 7cd391d671..a74fba2663 100644 --- a/ports/openvino/001-disable-tools.patch +++ b/ports/openvino/001-disable-tools.patch @@ -1,9 +1,9 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 3182d12693..db70cca198 100644 +index e4d31492a4..38c009b3cb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -134,7 +134,7 @@ if (ENABLE_TESTS OR ENABLE_TEMPLATE) - endif() +@@ -151,7 +151,7 @@ endif() + include(cmake/extra_modules.cmake) add_subdirectory(docs) -add_subdirectory(tools) diff --git a/ports/openvino/002-git-version.patch b/ports/openvino/002-git-version.patch new file mode 100644 index 0000000000..3684409764 --- /dev/null +++ b/ports/openvino/002-git-version.patch @@ -0,0 +1,31 @@ +diff --git a/cmake/developer_package/version.cmake b/cmake/developer_package/version.cmake +index 1b71befe44..b78f44995a 100644 +--- a/cmake/developer_package/version.cmake ++++ b/cmake/developer_package/version.cmake +@@ -5,7 +5,7 @@ + find_package(Git QUIET) + + function(ov_branch_name VAR REPO_ROOT) +- if(GIT_FOUND) ++ if(GIT_FOUND AND EXISTS "${REPO_ROOT}/.git") + execute_process( + COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD + WORKING_DIRECTORY ${REPO_ROOT} +@@ -16,7 +16,7 @@ function(ov_branch_name VAR REPO_ROOT) + endfunction() + + function(ov_commit_hash VAR REPO_ROOT) +- if(GIT_FOUND) ++ if(GIT_FOUND AND EXISTS "${REPO_ROOT}/.git") + execute_process( + COMMAND ${GIT_EXECUTABLE} rev-parse --short=11 HEAD + WORKING_DIRECTORY ${REPO_ROOT} +@@ -27,7 +27,7 @@ function(ov_commit_hash VAR REPO_ROOT) + endfunction() + + function(ov_commit_number VAR REPO_ROOT) +- if(GIT_FOUND) ++ if(GIT_FOUND AND EXISTS "${REPO_ROOT}/.git") + execute_process( + COMMAND ${GIT_EXECUTABLE} rev-list --count --first-parent HEAD + WORKING_DIRECTORY ${REPO_ROOT} diff --git a/ports/openvino/003-fix-find-onnx.patch b/ports/openvino/003-fix-find-onnx.patch deleted file mode 100644 index 7a8989a795..0000000000 --- a/ports/openvino/003-fix-find-onnx.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/thirdparty/dependencies.cmake b/thirdparty/dependencies.cmake -index e815baa..c0ccaaa 100644 ---- a/thirdparty/dependencies.cmake -+++ b/thirdparty/dependencies.cmake -@@ -580,7 +580,7 @@ endif() - # - - if(ENABLE_OV_ONNX_FRONTEND) -- find_package(ONNX 1.13.1 EXACT QUIET COMPONENTS onnx onnx_proto NO_MODULE) -+ find_package(ONNX 1.13.1 QUIET COMPONENTS onnx onnx_proto NO_MODULE) - - if(ONNX_FOUND) - # conan and vcpkg create imported targets 'onnx' and 'onnx_proto' diff --git a/ports/openvino/004-compilation-with-cpp17.patch b/ports/openvino/004-compilation-with-cpp17.patch deleted file mode 100644 index da6548b7c9..0000000000 --- a/ports/openvino/004-compilation-with-cpp17.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/src/plugins/intel_cpu/src/cpu_tensor.cpp b/src/plugins/intel_cpu/src/cpu_tensor.cpp -index 48d8fdd4be..815edd9309 100644 ---- a/src/plugins/intel_cpu/src/cpu_tensor.cpp -+++ b/src/plugins/intel_cpu/src/cpu_tensor.cpp -@@ -68,8 +68,9 @@ void Tensor::update_strides() const { - OPENVINO_ASSERT(blocked_desc, "not a valid blocked memory descriptor."); - auto& strides = blocked_desc->getStrides(); - m_strides.resize(strides.size()); -- std::transform(strides.cbegin(), strides.cend(), m_strides.begin(), -- std::bind1st(std::multiplies(), m_element_type.size())); -+ std::transform(strides.cbegin(), strides.cend(), m_strides.begin(), [this] (const size_t stride) { -+ return stride * m_element_type.size(); -+ }); - } - - void* Tensor::data(const element::Type& element_type) const { diff --git a/ports/openvino/005-tflite-search.patch b/ports/openvino/005-tflite-search.patch deleted file mode 100644 index 40efb3f0ec..0000000000 --- a/ports/openvino/005-tflite-search.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/frontends/common/src/manager.cpp b/src/frontends/common/src/manager.cpp -index 2fa59398b1..fa917dadb1 100644 ---- a/src/frontends/common/src/manager.cpp -+++ b/src/frontends/common/src/manager.cpp -@@ -49,6 +49,7 @@ public: - {"ir", "ir"}, - {"onnx", "onnx"}, - {"tf", "tensorflow"}, -+ {"tflite", "tensorflow_lite"}, - {"paddle", "paddle"}, - {"pytorch", "pytorch"}, - }; diff --git a/ports/openvino/007-macos-14.patch b/ports/openvino/007-macos-14.patch deleted file mode 100644 index 77a0f321ff..0000000000 --- a/ports/openvino/007-macos-14.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/plugins/intel_cpu/src/nodes/mha.cpp b/src/plugins/intel_cpu/src/nodes/mha.cpp -index d4405be5d468d..19cf63ac727cb 100644 ---- a/src/plugins/intel_cpu/src/nodes/mha.cpp -+++ b/src/plugins/intel_cpu/src/nodes/mha.cpp -@@ -16,6 +16,7 @@ - #include "common/cpu_convert.h" - #include "transformations/cpu_opset/x64/op/mha.hpp" - #include "dnnl_extension_utils.h" -+#include "utils/bfloat16.hpp" - #include - - using namespace InferenceEngine; diff --git a/ports/openvino/008-dynamic-protubuf.patch b/ports/openvino/008-dynamic-protubuf.patch deleted file mode 100644 index 60f5835a1e..0000000000 --- a/ports/openvino/008-dynamic-protubuf.patch +++ /dev/null @@ -1,156 +0,0 @@ -diff --git a/src/frontends/common/src/manager.cpp b/src/frontends/common/src/manager.cpp -index fa917dadb1..6194fca758 100644 ---- a/src/frontends/common/src/manager.cpp -+++ b/src/frontends/common/src/manager.cpp -@@ -20,11 +20,6 @@ class FrontEndManager::Impl { - std::mutex m_loading_mutex; - std::vector m_plugins; - -- /// \brief map of shared object per frontend -- static std::unordered_map> m_shared_objects_map; -- /// \brief Mutex to guard access the shared object map -- static std::mutex m_shared_objects_map_mutex; -- - public: - Impl() { - search_all_plugins(); -@@ -36,10 +31,6 @@ public: - auto fe_obj = std::make_shared(); - fe_obj->m_shared_object = std::make_shared(plugin.get_so_pointer()); - fe_obj->m_actual = plugin.get_creator().m_creator(); -- -- std::lock_guard guard(m_shared_objects_map_mutex); -- m_shared_objects_map.emplace(plugin.get_creator().m_name, fe_obj->m_shared_object); -- - return fe_obj; - } - -@@ -128,8 +119,8 @@ public: - } - - static void shutdown() { -- std::lock_guard guard(m_shared_objects_map_mutex); -- m_shared_objects_map.clear(); -+ std::lock_guard guard(get_shared_objects_mutex()); -+ get_shared_objects_map().clear(); - } - - private: -@@ -154,6 +145,7 @@ private: - {".xml", {"ir", "ir"}}, - {".onnx", {"onnx", "onnx"}}, - {".pb", {"tf", "tensorflow"}}, -+ {".pbtxt", {"tf", "tensorflow"}}, - {".tflite", {"tflite", "tensorflow_lite"}}, - {".pdmodel", {"paddle", "paddle"}}, - // {".ts", {"pytorch", "pytorch"}}, -@@ -224,9 +216,6 @@ private: - } - }; - --std::unordered_map> FrontEndManager::Impl::m_shared_objects_map{}; --std::mutex FrontEndManager::Impl::m_shared_objects_map_mutex{}; -- - FrontEndManager::FrontEndManager() : m_impl(new Impl()) {} - - FrontEndManager::FrontEndManager(FrontEndManager&&) noexcept = default; -diff --git a/src/frontends/common/src/plugin_loader.cpp b/src/frontends/common/src/plugin_loader.cpp -index a044152d8d..a98eff766b 100644 ---- a/src/frontends/common/src/plugin_loader.cpp -+++ b/src/frontends/common/src/plugin_loader.cpp -@@ -16,17 +16,32 @@ - - #include - --#include - #include - #include - - #include "openvino/util/file_util.hpp" -+#include "openvino/util/log.hpp" - #include "openvino/util/shared_object.hpp" - #include "plugin_loader.hpp" - - using namespace ov; - using namespace ov::frontend; - -+// Note, static methods below are required to create an order of initialization of static variables -+// e.g. if users (not encouraged) created ov::Model globally, we need to ensure proper order of initialization -+ -+/// \return map of shared object per frontend -+std::unordered_map>& ov::frontend::get_shared_objects_map() { -+ static std::unordered_map> shared_objects_map; -+ return shared_objects_map; -+} -+ -+/// \return Mutex to guard access the shared object map -+std::mutex& ov::frontend::get_shared_objects_mutex() { -+ static std::mutex shared_objects_map_mutex; -+ return shared_objects_map_mutex; -+} -+ - #ifdef OPENVINO_STATIC_LIBRARY - - # include "ov_frontends.hpp" -@@ -131,6 +146,10 @@ bool PluginInfo::load() { - m_load_failed = true; - return false; - } -+ -+ std::lock_guard guard(get_shared_objects_mutex()); -+ get_shared_objects_map().emplace(get_creator().m_name, get_so_pointer()); -+ - return true; - } - -diff --git a/src/frontends/common/src/plugin_loader.hpp b/src/frontends/common/src/plugin_loader.hpp -index 93e6a5cc2e..dccf8ddf7a 100644 ---- a/src/frontends/common/src/plugin_loader.hpp -+++ b/src/frontends/common/src/plugin_loader.hpp -@@ -4,7 +4,12 @@ - - #pragma once - --#include -+#include -+#include -+#include -+#include -+ -+#include "openvino/frontend/manager.hpp" - - #ifdef _WIN32 - static const char PathSeparator[] = ";"; -@@ -15,6 +20,9 @@ static const char PathSeparator[] = ":"; - namespace ov { - namespace frontend { - -+std::unordered_map>& get_shared_objects_map(); -+std::mutex& get_shared_objects_mutex(); -+ - /// \brief Internal data structure holding by each frontend. Includes library handle and extensions. - class FrontEndSharedData { - friend inline void add_extension_to_shared_data(std::shared_ptr& obj, -diff --git a/thirdparty/dependencies.cmake b/thirdparty/dependencies.cmake -index 12b72d52a2..111eea7c28 100644 ---- a/thirdparty/dependencies.cmake -+++ b/thirdparty/dependencies.cmake -@@ -415,14 +415,14 @@ if(ENABLE_OV_PADDLE_FRONTEND OR ENABLE_OV_ONNX_FRONTEND OR ENABLE_OV_TF_FRONTEND - if(CMAKE_VERBOSE_MAKEFILE) - set(Protobuf_DEBUG ON) - endif() -- if(OV_VCPKG_BUILD) -- set(protobuf_config CONFIG) -- endif() - # try to find newer version first (major is changed) - # see https://protobuf.dev/support/version-support/ and - # https://github.com/protocolbuffers/protobuf/commit/d61f75ff6db36b4f9c0765f131f8edc2f86310fa -- find_package(Protobuf 4.22.0 QUIET ${protobuf_config}) -+ find_package(Protobuf 4.22.0 QUIET CONFIG) - if(NOT Protobuf_FOUND) -+ if(OV_VCPKG_BUILD) -+ set(protobuf_config CONFIG) -+ endif() - # otherwise, fallback to existing default - find_package(Protobuf 3.20.3 REQUIRED ${protobuf_config}) - endif() diff --git a/ports/openvino/009-tensorflow-proto-odr.patch b/ports/openvino/009-tensorflow-proto-odr.patch deleted file mode 100644 index 5bd4ef8ec0..0000000000 --- a/ports/openvino/009-tensorflow-proto-odr.patch +++ /dev/null @@ -1,746 +0,0 @@ -diff --git a/cmake/developer_package/frontends/frontends.cmake b/cmake/developer_package/frontends/frontends.cmake -index df3586474b..ed603ca765 100644 ---- a/cmake/developer_package/frontends/frontends.cmake -+++ b/cmake/developer_package/frontends/frontends.cmake -@@ -125,19 +125,26 @@ macro(ov_add_frontend) - source_group("public include" FILES ${LIBRARY_PUBLIC_HEADERS}) - - # Generate protobuf file on build time for each '.proto' file in src/proto -- file(GLOB proto_files ${frontend_root_dir}/src/proto/*.proto) -+ set(protofiles_root_dir "${frontend_root_dir}/src/proto") -+ file(GLOB_RECURSE proto_files ${protofiles_root_dir}/*.proto) - -- foreach(INFILE IN LISTS proto_files) -- get_filename_component(FILE_DIR ${INFILE} DIRECTORY) -- get_filename_component(FILE_WE ${INFILE} NAME_WE) -- set(OUTPUT_PB_SRC ${CMAKE_CURRENT_BINARY_DIR}/${FILE_WE}.pb.cc) -- set(OUTPUT_PB_HEADER ${CMAKE_CURRENT_BINARY_DIR}/${FILE_WE}.pb.h) -- set(GENERATED_PROTO ${INFILE}) -+ foreach(proto_file IN LISTS proto_files) -+ # filter out standard google proto files -+ if(proto_file MATCHES ".*google.*") -+ continue() -+ endif() -+ -+ file(RELATIVE_PATH proto_file_relative "${CMAKE_SOURCE_DIR}" "${proto_file}") -+ get_filename_component(FILE_WE ${proto_file} NAME_WE) -+ file(RELATIVE_PATH relative_path ${protofiles_root_dir} ${proto_file}) -+ get_filename_component(relative_path ${relative_path} DIRECTORY) -+ set(OUTPUT_PB_SRC ${CMAKE_CURRENT_BINARY_DIR}/${relative_path}/${FILE_WE}.pb.cc) -+ set(OUTPUT_PB_HEADER ${CMAKE_CURRENT_BINARY_DIR}/${relative_path}/${FILE_WE}.pb.h) - add_custom_command( - OUTPUT "${OUTPUT_PB_SRC}" "${OUTPUT_PB_HEADER}" -- COMMAND ${PROTOC_EXECUTABLE} ARGS --cpp_out ${CMAKE_CURRENT_BINARY_DIR} -I ${FILE_DIR} ${FILE_WE}.proto -- DEPENDS ${PROTOC_DEPENDENCY} ${GENERATED_PROTO} -- COMMENT "Running C++ protocol buffer compiler (${PROTOC_EXECUTABLE}) on ${GENERATED_PROTO}" -+ COMMAND ${PROTOC_EXECUTABLE} ARGS --cpp_out ${CMAKE_CURRENT_BINARY_DIR} -I ${protofiles_root_dir} ${proto_file} -+ DEPENDS ${PROTOC_DEPENDENCY} ${proto_file} -+ COMMENT "Running C++ protocol buffer compiler (${PROTOC_EXECUTABLE}) on ${proto_file_relative}" - VERBATIM - COMMAND_EXPAND_LISTS) - list(APPEND PROTO_SRCS "${OUTPUT_PB_SRC}") -diff --git a/src/frontends/tensorflow/src/checkpoint_v1_reader.cpp b/src/frontends/tensorflow/src/checkpoint_v1_reader.cpp -index b51b8c91b3..f8a85bf4f5 100644 ---- a/src/frontends/tensorflow/src/checkpoint_v1_reader.cpp -+++ b/src/frontends/tensorflow/src/checkpoint_v1_reader.cpp -@@ -7,7 +7,7 @@ - #include "checkpoint_utils.hpp" - #include "openvino/frontend/exception.hpp" - #include "openvino/util/file_util.hpp" --#include "saved_tensor_slice.pb.h" -+#include "ov_tensorflow/saved_tensor_slice.pb.h" - #include "tf_utils.hpp" - - #ifdef ENABLE_SNAPPY_COMPRESSION -diff --git a/src/frontends/tensorflow/src/checkpoint_v1_reader.hpp b/src/frontends/tensorflow/src/checkpoint_v1_reader.hpp -index bfae3b139a..1171fd6a68 100644 ---- a/src/frontends/tensorflow/src/checkpoint_v1_reader.hpp -+++ b/src/frontends/tensorflow/src/checkpoint_v1_reader.hpp -@@ -12,9 +12,9 @@ - #include "checkpoint_utils.hpp" - #include "openvino/core/any.hpp" - #include "openvino/frontend/exception.hpp" --#include "saved_tensor_slice.pb.h" --#include "tensor_shape.pb.h" --#include "types.pb.h" -+#include "ov_tensorflow/saved_tensor_slice.pb.h" -+#include "ov_tensorflow/tensor_shape.pb.h" -+#include "ov_tensorflow/types.pb.h" - - namespace ov { - namespace frontend { -diff --git a/src/frontends/tensorflow/src/decoder_argdef.cpp b/src/frontends/tensorflow/src/decoder_argdef.cpp -index 3430bcbe5e..ce7fc44a91 100644 ---- a/src/frontends/tensorflow/src/decoder_argdef.cpp -+++ b/src/frontends/tensorflow/src/decoder_argdef.cpp -@@ -5,11 +5,11 @@ - #include "decoder_argdef.hpp" - - #include "decoder_proto.hpp" --#include "op_def.pb.h" -+#include "ov_tensorflow/op_def.pb.h" - #include "openvino/frontend/tensorflow/node_context.hpp" - #include "openvino/frontend/tensorflow/special_types.hpp" - #include "tf_utils.hpp" --#include "types.pb.h" -+#include "ov_tensorflow/types.pb.h" - - namespace ov { - namespace frontend { -diff --git a/src/frontends/tensorflow/src/decoder_proto.cpp b/src/frontends/tensorflow/src/decoder_proto.cpp -index 2488973c10..cf6049cdbc 100644 ---- a/src/frontends/tensorflow/src/decoder_proto.cpp -+++ b/src/frontends/tensorflow/src/decoder_proto.cpp -@@ -4,12 +4,12 @@ - - #include "decoder_proto.hpp" - --#include "attr_value.pb.h" --#include "node_def.pb.h" -+#include "ov_tensorflow/attr_value.pb.h" -+#include "ov_tensorflow/node_def.pb.h" - #include "openvino/frontend/tensorflow/node_context.hpp" - #include "openvino/frontend/tensorflow/special_types.hpp" - #include "tf_utils.hpp" --#include "types.pb.h" -+#include "ov_tensorflow/types.pb.h" - - namespace ov { - namespace frontend { -diff --git a/src/frontends/tensorflow/src/decoder_proto.hpp b/src/frontends/tensorflow/src/decoder_proto.hpp -index 338bfdecce..9d22e273e1 100644 ---- a/src/frontends/tensorflow/src/decoder_proto.hpp -+++ b/src/frontends/tensorflow/src/decoder_proto.hpp -@@ -9,7 +9,7 @@ - - #include "openvino/core/type/element_type.hpp" - #include "openvino/frontend/tensorflow/decoder.hpp" --#include "types.pb.h" -+#include "ov_tensorflow/types.pb.h" - - namespace tensorflow { - class GraphDef; -diff --git a/src/frontends/tensorflow/src/graph_iterator_meta.cpp b/src/frontends/tensorflow/src/graph_iterator_meta.cpp -index 8bc41fbaef..06f2d31f38 100644 ---- a/src/frontends/tensorflow/src/graph_iterator_meta.cpp -+++ b/src/frontends/tensorflow/src/graph_iterator_meta.cpp -@@ -10,8 +10,8 @@ - #include - - #include "openvino/core/type/element_type.hpp" --#include "tensor_bundle.pb.h" --#include "trackable_object_graph.pb.h" -+#include "ov_tensorflow/tensor_bundle.pb.h" -+#include "ov_tensorflow/trackable_object_graph.pb.h" - - namespace ov { - namespace frontend { -diff --git a/src/frontends/tensorflow/src/graph_iterator_proto.hpp b/src/frontends/tensorflow/src/graph_iterator_proto.hpp -index 8b073b0837..85d9a3767a 100644 ---- a/src/frontends/tensorflow/src/graph_iterator_proto.hpp -+++ b/src/frontends/tensorflow/src/graph_iterator_proto.hpp -@@ -10,7 +10,7 @@ - #include "checkpoint_v1_reader.hpp" - #include "decoder_argdef.hpp" - #include "decoder_proto.hpp" --#include "graph.pb.h" -+#include "ov_tensorflow/graph.pb.h" - #include "openvino/frontend/exception.hpp" - #include "openvino/frontend/graph_iterator.hpp" - #include "openvino/frontend/tensorflow/decoder.hpp" -diff --git a/src/frontends/tensorflow/src/graph_iterator_saved_model.cpp b/src/frontends/tensorflow/src/graph_iterator_saved_model.cpp -index ece0148d19..803e7d694b 100644 ---- a/src/frontends/tensorflow/src/graph_iterator_saved_model.cpp -+++ b/src/frontends/tensorflow/src/graph_iterator_saved_model.cpp -@@ -10,8 +10,8 @@ - #include - - #include "openvino/core/type/element_type.hpp" --#include "tensor_bundle.pb.h" --#include "trackable_object_graph.pb.h" -+#include "ov_tensorflow/tensor_bundle.pb.h" -+#include "ov_tensorflow/trackable_object_graph.pb.h" - - namespace ov { - namespace frontend { -diff --git a/src/frontends/tensorflow/src/graph_iterator_saved_model.hpp b/src/frontends/tensorflow/src/graph_iterator_saved_model.hpp -index 511f2a0a5b..4cb385e66f 100644 ---- a/src/frontends/tensorflow/src/graph_iterator_saved_model.hpp -+++ b/src/frontends/tensorflow/src/graph_iterator_saved_model.hpp -@@ -8,7 +8,7 @@ - - #include "graph_iterator_proto.hpp" - #include "openvino/util/file_util.hpp" --#include "saved_model.pb.h" -+#include "ov_tensorflow/saved_model.pb.h" - #include "variables_index.hpp" - - namespace ov { -diff --git a/src/frontends/tensorflow/src/op/var_handle.cpp b/src/frontends/tensorflow/src/op/var_handle.cpp -index 50a5b73c44..0c86041440 100644 ---- a/src/frontends/tensorflow/src/op/var_handle.cpp -+++ b/src/frontends/tensorflow/src/op/var_handle.cpp -@@ -10,7 +10,7 @@ - #include "ngraph/runtime/shared_buffer.hpp" - #include "openvino/opsets/opset8.hpp" - #include "openvino/util/mmap_object.hpp" --#include "tensor_bundle.pb.h" -+#include "ov_tensorflow/tensor_bundle.pb.h" - - using namespace std; - using namespace ov::opset8; -diff --git a/src/frontends/tensorflow/src/proto/any.proto b/src/frontends/tensorflow/src/proto/google/protobuf/any.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/any.proto -rename to src/frontends/tensorflow/src/proto/google/protobuf/any.proto -diff --git a/src/frontends/tensorflow/src/proto/wrappers.proto b/src/frontends/tensorflow/src/proto/google/protobuf/wrappers.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/wrappers.proto -rename to src/frontends/tensorflow/src/proto/google/protobuf/wrappers.proto -diff --git a/src/frontends/tensorflow/src/proto/allocation_description.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/allocation_description.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/allocation_description.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/allocation_description.proto -diff --git a/src/frontends/tensorflow/src/proto/api_def.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/api_def.proto -similarity index 99% -rename from src/frontends/tensorflow/src/proto/api_def.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/api_def.proto -index 810aabc5a2..cbb581973d 100644 ---- a/src/frontends/tensorflow/src/proto/api_def.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/api_def.proto -@@ -21,7 +21,7 @@ option java_outer_classname = "ApiDefProtos"; - option java_multiple_files = true; - option java_package = "org.tensorflow.framework"; - option go_package = "github.com/tensorflow/tensorflow/tensorflow/go/core/framework/api_def_go_proto"; --import "attr_value.proto"; -+import "ov_tensorflow/attr_value.proto"; - - // Used to specify and override the default API & behavior in the - // generated code for client languages, from what you would get from -diff --git a/src/frontends/tensorflow/src/proto/attr_value.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/attr_value.proto -similarity index 96% -rename from src/frontends/tensorflow/src/proto/attr_value.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/attr_value.proto -index 3028176c02..b903c30cf9 100644 ---- a/src/frontends/tensorflow/src/proto/attr_value.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/attr_value.proto -@@ -14,9 +14,9 @@ syntax = "proto3"; - - package tensorflow; - --import "tensor.proto"; --import "tensor_shape.proto"; --import "types.proto"; -+import "ov_tensorflow/tensor.proto"; -+import "ov_tensorflow/tensor_shape.proto"; -+import "ov_tensorflow/types.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "AttrValueProtos"; -diff --git a/src/frontends/tensorflow/src/proto/cost_graph.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/cost_graph.proto -similarity index 97% -rename from src/frontends/tensorflow/src/proto/cost_graph.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/cost_graph.proto -index dad93a029b..8e4d9788f4 100644 ---- a/src/frontends/tensorflow/src/proto/cost_graph.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/cost_graph.proto -@@ -14,8 +14,8 @@ syntax = "proto3"; - - package tensorflow; - --import "tensor_shape.proto"; --import "types.proto"; -+import "ov_tensorflow/tensor_shape.proto"; -+import "ov_tensorflow/types.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "CostGraphProtos"; -diff --git a/src/frontends/tensorflow/src/proto/dataset_options.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/dataset_options.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/dataset_options.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/dataset_options.proto -diff --git a/src/frontends/tensorflow/src/proto/device_attributes.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/device_attributes.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/device_attributes.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/device_attributes.proto -diff --git a/src/frontends/tensorflow/src/proto/function.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/function.proto -similarity index 98% -rename from src/frontends/tensorflow/src/proto/function.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/function.proto -index 65a2acb3b9..9e84731c98 100644 ---- a/src/frontends/tensorflow/src/proto/function.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/function.proto -@@ -14,9 +14,9 @@ syntax = "proto3"; - - package tensorflow; - --import "attr_value.proto"; --import "node_def.proto"; --import "op_def.proto"; -+import "ov_tensorflow/attr_value.proto"; -+import "ov_tensorflow/node_def.proto"; -+import "ov_tensorflow/op_def.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "FunctionProtos"; -diff --git a/src/frontends/tensorflow/src/proto/graph.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/graph.proto -similarity index 95% -rename from src/frontends/tensorflow/src/proto/graph.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/graph.proto -index c52e84022f..e047abeafe 100644 ---- a/src/frontends/tensorflow/src/proto/graph.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/graph.proto -@@ -14,9 +14,9 @@ syntax = "proto3"; - - package tensorflow; - --import "function.proto"; --import "node_def.proto"; --import "versions.proto"; -+import "ov_tensorflow/function.proto"; -+import "ov_tensorflow/node_def.proto"; -+import "ov_tensorflow/versions.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "GraphProtos"; -diff --git a/src/frontends/tensorflow/src/proto/graph_transfer_info.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/graph_transfer_info.proto -similarity index 98% -rename from src/frontends/tensorflow/src/proto/graph_transfer_info.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/graph_transfer_info.proto -index e42c135369..9e7d598e34 100644 ---- a/src/frontends/tensorflow/src/proto/graph_transfer_info.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/graph_transfer_info.proto -@@ -14,7 +14,7 @@ syntax = "proto3"; - - package tensorflow; - --import "types.proto"; -+import "ov_tensorflow/types.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "GraphTransferInfoProto"; -diff --git a/src/frontends/tensorflow/src/proto/kernel_def.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/kernel_def.proto -similarity index 98% -rename from src/frontends/tensorflow/src/proto/kernel_def.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/kernel_def.proto -index 5e6b839d31..88142d3de9 100644 ---- a/src/frontends/tensorflow/src/proto/kernel_def.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/kernel_def.proto -@@ -14,7 +14,7 @@ syntax = "proto3"; - - package tensorflow; - --import "attr_value.proto"; -+import "ov_tensorflow/attr_value.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "KernelDefProtos"; -diff --git a/src/frontends/tensorflow/src/proto/log_memory.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/log_memory.proto -similarity index 98% -rename from src/frontends/tensorflow/src/proto/log_memory.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/log_memory.proto -index 96dac4c9ca..62489f0e0b 100644 ---- a/src/frontends/tensorflow/src/proto/log_memory.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/log_memory.proto -@@ -14,7 +14,7 @@ syntax = "proto3"; - - package tensorflow; - --import "tensor_description.proto"; -+import "ov_tensorflow/tensor_description.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "LogMemoryProtos"; -diff --git a/src/frontends/tensorflow/src/proto/meta_graph.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/meta_graph.proto -similarity index 97% -rename from src/frontends/tensorflow/src/proto/meta_graph.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/meta_graph.proto -index b6918fa853..255fb6efeb 100644 ---- a/src/frontends/tensorflow/src/proto/meta_graph.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/meta_graph.proto -@@ -14,14 +14,14 @@ syntax = "proto3"; - - package tensorflow; - --import "any.proto"; --import "graph.proto"; --import "op_def.proto"; --import "tensor_shape.proto"; --import "types.proto"; --import "saved_object_graph.proto"; --import "saver.proto"; --import "struct.proto"; -+import "google/protobuf/any.proto"; -+import "ov_tensorflow/graph.proto"; -+import "ov_tensorflow/op_def.proto"; -+import "ov_tensorflow/tensor_shape.proto"; -+import "ov_tensorflow/types.proto"; -+import "ov_tensorflow/saved_object_graph.proto"; -+import "ov_tensorflow/saver.proto"; -+import "ov_tensorflow/struct.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "MetaGraphProtos"; -diff --git a/src/frontends/tensorflow/src/proto/model.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/model.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/model.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/model.proto -diff --git a/src/frontends/tensorflow/src/proto/node_def.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/node_def.proto -similarity index 99% -rename from src/frontends/tensorflow/src/proto/node_def.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/node_def.proto -index 573d0f901d..b8f3a017a3 100644 ---- a/src/frontends/tensorflow/src/proto/node_def.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/node_def.proto -@@ -14,7 +14,7 @@ syntax = "proto3"; - - package tensorflow; - --import "attr_value.proto"; -+import "ov_tensorflow/attr_value.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "NodeProto"; -diff --git a/src/frontends/tensorflow/src/proto/op_def.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/op_def.proto -similarity index 98% -rename from src/frontends/tensorflow/src/proto/op_def.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/op_def.proto -index 4d5c66c39e..31493fed26 100644 ---- a/src/frontends/tensorflow/src/proto/op_def.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/op_def.proto -@@ -18,9 +18,10 @@ option java_outer_classname = "OpDefProtos"; - option java_multiple_files = true; - option java_package = "org.tensorflow.framework"; - option go_package = "github.com/tensorflow/tensorflow/tensorflow/go/core/framework/op_def_go_proto"; --import "attr_value.proto"; --import "types.proto"; --import "resource_handle.proto"; -+ -+import "ov_tensorflow/attr_value.proto"; -+import "ov_tensorflow/types.proto"; -+import "ov_tensorflow/resource_handle.proto"; - - // Defines an operation. A NodeDef in a GraphDef specifies an Op by - // using the "op" field which should match the name of a OpDef. -diff --git a/src/frontends/tensorflow/src/proto/reader_base.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/reader_base.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/reader_base.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/reader_base.proto -diff --git a/src/frontends/tensorflow/src/proto/remote_fused_graph_execute_info.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/remote_fused_graph_execute_info.proto -similarity index 94% -rename from src/frontends/tensorflow/src/proto/remote_fused_graph_execute_info.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/remote_fused_graph_execute_info.proto -index abfcfdbec0..3b17878e12 100644 ---- a/src/frontends/tensorflow/src/proto/remote_fused_graph_execute_info.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/remote_fused_graph_execute_info.proto -@@ -14,9 +14,9 @@ syntax = "proto3"; - - package tensorflow; - --import "graph.proto"; --import "tensor_shape.proto"; --import "types.proto"; -+import "ov_tensorflow/graph.proto"; -+import "ov_tensorflow/tensor_shape.proto"; -+import "ov_tensorflow/types.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "RemoteFusedGraphExecuteInfoProto"; -diff --git a/src/frontends/tensorflow/src/proto/resource_handle.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/resource_handle.proto -similarity index 96% -rename from src/frontends/tensorflow/src/proto/resource_handle.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/resource_handle.proto -index 4d872b6d9d..19b4dcc3b8 100644 ---- a/src/frontends/tensorflow/src/proto/resource_handle.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/resource_handle.proto -@@ -14,8 +14,8 @@ syntax = "proto3"; - - package tensorflow; - --import "tensor_shape.proto"; --import "types.proto"; -+import "ov_tensorflow/tensor_shape.proto"; -+import "ov_tensorflow/types.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "ResourceHandle"; -diff --git a/src/frontends/tensorflow/src/proto/saved_model.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/saved_model.proto -similarity index 97% -rename from src/frontends/tensorflow/src/proto/saved_model.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/saved_model.proto -index 0034fdfd46..f866065522 100644 ---- a/src/frontends/tensorflow/src/proto/saved_model.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/saved_model.proto -@@ -14,7 +14,7 @@ syntax = "proto3"; - - package tensorflow; - --import "meta_graph.proto"; -+import "ov_tensorflow/meta_graph.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "SavedModelProtos"; -diff --git a/src/frontends/tensorflow/src/proto/saved_object_graph.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/saved_object_graph.proto -similarity index 97% -rename from src/frontends/tensorflow/src/proto/saved_object_graph.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/saved_object_graph.proto -index 671441075c..d0b2170044 100644 ---- a/src/frontends/tensorflow/src/proto/saved_object_graph.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/saved_object_graph.proto -@@ -14,13 +14,13 @@ syntax = "proto3"; - - package tensorflow; - --import "any.proto"; --import "tensor_shape.proto"; --import "types.proto"; --import "variable.proto"; --import "versions.proto"; --import "struct.proto"; --import "trackable_object_graph.proto"; -+import "google/protobuf/any.proto"; -+import "ov_tensorflow/tensor_shape.proto"; -+import "ov_tensorflow/types.proto"; -+import "ov_tensorflow/variable.proto"; -+import "ov_tensorflow/versions.proto"; -+import "ov_tensorflow/struct.proto"; -+import "ov_tensorflow/trackable_object_graph.proto"; - - option cc_enable_arenas = true; - option go_package = "github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf/for_core_protos_go_proto"; -diff --git a/src/frontends/tensorflow/src/proto/saved_tensor_slice.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/saved_tensor_slice.proto -similarity index 94% -rename from src/frontends/tensorflow/src/proto/saved_tensor_slice.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/saved_tensor_slice.proto -index 4645b2bdca..9e628752bb 100644 ---- a/src/frontends/tensorflow/src/proto/saved_tensor_slice.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/saved_tensor_slice.proto -@@ -35,11 +35,11 @@ option java_outer_classname = "SavedTensorSliceProtos"; - option java_multiple_files = true; - option java_package = "org.tensorflow.util"; - --import "tensor_shape.proto"; --import "tensor_slice.proto"; --import "tensor.proto"; --import "types.proto"; --import "versions.proto"; -+import "ov_tensorflow/tensor_shape.proto"; -+import "ov_tensorflow/tensor_slice.proto"; -+import "ov_tensorflow/tensor.proto"; -+import "ov_tensorflow/types.proto"; -+import "ov_tensorflow/versions.proto"; - - // Metadata describing the set of slices of the same tensor saved in a - // checkpoint file. -diff --git a/src/frontends/tensorflow/src/proto/saver.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/saver.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/saver.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/saver.proto -diff --git a/src/frontends/tensorflow/src/proto/step_stats.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/step_stats.proto -similarity index 97% -rename from src/frontends/tensorflow/src/proto/step_stats.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/step_stats.proto -index 04e0864a5a..027a1d79ee 100644 ---- a/src/frontends/tensorflow/src/proto/step_stats.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/step_stats.proto -@@ -14,8 +14,8 @@ syntax = "proto3"; - - package tensorflow; - --import "allocation_description.proto"; --import "tensor_description.proto"; -+import "ov_tensorflow/allocation_description.proto"; -+import "ov_tensorflow/tensor_description.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "StepStatsProtos"; -diff --git a/src/frontends/tensorflow/src/proto/struct.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/struct.proto -similarity index 98% -rename from src/frontends/tensorflow/src/proto/struct.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/struct.proto -index d03201b685..4126bd98c4 100644 ---- a/src/frontends/tensorflow/src/proto/struct.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/struct.proto -@@ -14,9 +14,9 @@ syntax = "proto3"; - - package tensorflow; - --import "tensor.proto"; --import "tensor_shape.proto"; --import "types.proto"; -+import "ov_tensorflow/tensor.proto"; -+import "ov_tensorflow/tensor_shape.proto"; -+import "ov_tensorflow/types.proto"; - - option go_package = "github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf/for_core_protos_go_proto"; - -diff --git a/src/frontends/tensorflow/src/proto/summary.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/summary.proto -similarity index 99% -rename from src/frontends/tensorflow/src/proto/summary.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/summary.proto -index 9e4b95f4bc..ce32617694 100644 ---- a/src/frontends/tensorflow/src/proto/summary.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/summary.proto -@@ -14,7 +14,7 @@ syntax = "proto3"; - - package tensorflow; - --import "tensor.proto"; -+import "ov_tensorflow/tensor.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "SummaryProtos"; -diff --git a/src/frontends/tensorflow/src/proto/tensor.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/tensor.proto -similarity index 96% -rename from src/frontends/tensorflow/src/proto/tensor.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/tensor.proto -index c2e1fd7eb6..42f063536e 100644 ---- a/src/frontends/tensorflow/src/proto/tensor.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/tensor.proto -@@ -14,9 +14,9 @@ syntax = "proto3"; - - package tensorflow; - --import "resource_handle.proto"; --import "tensor_shape.proto"; --import "types.proto"; -+import "ov_tensorflow/resource_handle.proto"; -+import "ov_tensorflow/tensor_shape.proto"; -+import "ov_tensorflow/types.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "TensorProtos"; -diff --git a/src/frontends/tensorflow/src/proto/tensor_bundle.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/tensor_bundle.proto -similarity index 94% -rename from src/frontends/tensorflow/src/proto/tensor_bundle.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/tensor_bundle.proto -index 43fea749b4..21af38195c 100644 ---- a/src/frontends/tensorflow/src/proto/tensor_bundle.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/tensor_bundle.proto -@@ -14,10 +14,10 @@ syntax = "proto3"; - - package tensorflow; - --import "tensor_shape.proto"; --import "tensor_slice.proto"; --import "types.proto"; --import "versions.proto"; -+import "ov_tensorflow/tensor_shape.proto"; -+import "ov_tensorflow/tensor_slice.proto"; -+import "ov_tensorflow/types.proto"; -+import "ov_tensorflow/versions.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "TensorBundleProtos"; -diff --git a/src/frontends/tensorflow/src/proto/tensor_description.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/tensor_description.proto -similarity index 90% -rename from src/frontends/tensorflow/src/proto/tensor_description.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/tensor_description.proto -index 3ab9c310a6..c03e1311c1 100644 ---- a/src/frontends/tensorflow/src/proto/tensor_description.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/tensor_description.proto -@@ -14,9 +14,9 @@ syntax = "proto3"; - - package tensorflow; - --import "allocation_description.proto"; --import "tensor_shape.proto"; --import "types.proto"; -+import "ov_tensorflow/allocation_description.proto"; -+import "ov_tensorflow/tensor_shape.proto"; -+import "ov_tensorflow/types.proto"; - - option cc_enable_arenas = true; - option java_outer_classname = "TensorDescriptionProtos"; -diff --git a/src/frontends/tensorflow/src/proto/tensor_shape.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/tensor_shape.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/tensor_shape.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/tensor_shape.proto -diff --git a/src/frontends/tensorflow/src/proto/tensor_slice.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/tensor_slice.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/tensor_slice.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/tensor_slice.proto -diff --git a/src/frontends/tensorflow/src/proto/trackable_object_graph.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/trackable_object_graph.proto -similarity index 98% -rename from src/frontends/tensorflow/src/proto/trackable_object_graph.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/trackable_object_graph.proto -index f4a8e4da34..f0a9617432 100644 ---- a/src/frontends/tensorflow/src/proto/trackable_object_graph.proto -+++ b/src/frontends/tensorflow/src/proto/ov_tensorflow/trackable_object_graph.proto -@@ -14,7 +14,7 @@ syntax = "proto3"; - - package tensorflow; - --import "wrappers.proto"; -+import "google/protobuf/wrappers.proto"; - - option cc_enable_arenas = true; - option go_package = "github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf/for_core_protos_go_proto"; -diff --git a/src/frontends/tensorflow/src/proto/types.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/types.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/types.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/types.proto -diff --git a/src/frontends/tensorflow/src/proto/variable.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/variable.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/variable.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/variable.proto -diff --git a/src/frontends/tensorflow/src/proto/versions.proto b/src/frontends/tensorflow/src/proto/ov_tensorflow/versions.proto -similarity index 100% -rename from src/frontends/tensorflow/src/proto/versions.proto -rename to src/frontends/tensorflow/src/proto/ov_tensorflow/versions.proto -diff --git a/src/frontends/tensorflow/src/tf_utils.hpp b/src/frontends/tensorflow/src/tf_utils.hpp -index a7a80a522b..5c4a97a5da 100644 ---- a/src/frontends/tensorflow/src/tf_utils.hpp -+++ b/src/frontends/tensorflow/src/tf_utils.hpp -@@ -4,8 +4,8 @@ - - #pragma once - --#include "attr_value.pb.h" --#include "node_def.pb.h" -+#include "ov_tensorflow/attr_value.pb.h" -+#include "ov_tensorflow/node_def.pb.h" - #include "openvino/core/node.hpp" - #include "openvino/core/partial_shape.hpp" - #include "openvino/core/runtime_attribute.hpp" -@@ -13,9 +13,9 @@ - #include "openvino/core/type/element_type.hpp" - #include "openvino/frontend/node_context.hpp" - #include "openvino/runtime/tensor.hpp" --#include "tensor.pb.h" --#include "tensor_shape.pb.h" --#include "types.pb.h" -+#include "ov_tensorflow/tensor.pb.h" -+#include "ov_tensorflow/tensor_shape.pb.h" -+#include "ov_tensorflow/types.pb.h" - - namespace ov { - namespace frontend { -diff --git a/src/frontends/tensorflow/src/variables_index.cpp b/src/frontends/tensorflow/src/variables_index.cpp -index c24ffd8112..2dcf3faf9e 100644 ---- a/src/frontends/tensorflow/src/variables_index.cpp -+++ b/src/frontends/tensorflow/src/variables_index.cpp -@@ -11,8 +11,8 @@ - #include "graph_iterator_saved_model.hpp" - #include "openvino/core/type/element_type.hpp" - #include "openvino/util/mmap_object.hpp" --#include "tensor_bundle.pb.h" --#include "trackable_object_graph.pb.h" -+#include "ov_tensorflow/tensor_bundle.pb.h" -+#include "ov_tensorflow/trackable_object_graph.pb.h" - - #ifdef ENABLE_SNAPPY_COMPRESSION - # include "snappy.h" -diff --git a/src/frontends/tensorflow/src/variables_index.hpp b/src/frontends/tensorflow/src/variables_index.hpp -index df852a6279..aa805b264b 100644 ---- a/src/frontends/tensorflow/src/variables_index.hpp -+++ b/src/frontends/tensorflow/src/variables_index.hpp -@@ -9,7 +9,7 @@ - #include "graph_iterator_proto.hpp" - #include "openvino/util/file_util.hpp" - #include "openvino/util/mmap_object.hpp" --#include "saved_model.pb.h" -+#include "ov_tensorflow/saved_model.pb.h" - - namespace ov { - namespace frontend { diff --git a/ports/openvino/portfile.cmake b/ports/openvino/portfile.cmake index 3556c5d285..0828fe0bb5 100644 --- a/ports/openvino/portfile.cmake +++ b/ports/openvino/portfile.cmake @@ -2,24 +2,12 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO openvinotoolkit/openvino REF "${VERSION}" - SHA512 29ee621c1428808607ce499e527b5943b8a2172769cb7315ef25253db818f54f2da4bbf5539198c012e25e78c8c830205b46f6e6a83032e732e82a7d00d46312 + SHA512 d44aa06763b18fabb6e9fb52834cbe9b6c91384541177093741519c7cf6f209720cb9aabf0b4a2b2b32625399ca2076d7b1a3430ea00dadeda86255fb8baf720 PATCHES # vcpkg specific patch, because OV creates a file in source tree, which is prohibited 001-disable-tools.patch - # from https://github.com/openvinotoolkit/openvino/pull/18359 - 003-fix-find-onnx.patch - # from https://github.com/openvinotoolkit/openvino/pull/19629 - 004-compilation-with-cpp17.patch - # from https://github.com/openvinotoolkit/openvino/pull/19599 - 005-tflite-search.patch - # # from https://github.com/openvinotoolkit/openvino/pull/19946 - 007-macos-14.patch - # from https://github.com/openvinotoolkit/openvino/pull/19758 - # and https://github.com/openvinotoolkit/openvino/pull/20612 - 008-dynamic-protubuf.patch - # from https://github.com/openvinotoolkit/openvino/pull/20588 - # and https://github.com/openvinotoolkit/openvino/pull/20636 - 009-tensorflow-proto-odr.patch + # https://github.com/openvinotoolkit/openvino/pull/19628 + 002-git-version.patch HEAD_REF master) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS @@ -41,17 +29,20 @@ if(ENABLE_INTEL_GPU) # python is required for conversion of OpenCL source files into .cpp. vcpkg_find_acquire_program(PYTHON3) - if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + # remove 'rapidjson' directory and use vcpkg's one to comply with ODR + file(REMOVE_RECURSE ${SOURCE_PATH}/src/plugins/intel_gpu/thirdparty/rapidjson) + + if(VCPKG_LIBRARY_LINKAGE STREQUAL "static" AND ENABLE_INTEL_CPU) message(WARNING "OneDNN for GPU is not available for static build, which is required for dGPU." - "Please, consider using VCPKG_LIBRARY_LINKAGE=\"dynamic\".") - list(APPEND FEATURE_OPTIONS "-DENABLE_ONEDNN_FOR_GPU=OFF") + "Please, consider using VCPKG_LIBRARY_LINKAGE=\"dynamic\" or disable CPU plugin," + "which uses another flavor of oneDNN.") else() vcpkg_from_github( OUT_SOURCE_PATH DEP_SOURCE_PATH REPO oneapi-src/oneDNN - REF ec0b2ee85fc2a2dbdeec10035c5ef5813d8fb5ea - SHA512 abc09c9ab190cc043ba675fdcaf2da0069eacce14aad6e788a9957d8b6704cfcefe5a707e78d544d25acac35bc83217660ee64528150311f577d2ccbdd165de1 + REF 284ad4574939fa784e4ddaa1f4aa577b8eb7a017 + SHA512 b8b003659b5972ce7a4d5cfd6bcac9377d06055fa67bd2830af0780b2272d2faed3d1d58fb1cbd5aa8bee68c9d6005ac5ae63381b5f80c3ac86442f88cce73a3 PATCHES 006-onednn-gpu-build.patch ) file(COPY "${DEP_SOURCE_PATH}/" DESTINATION "${SOURCE_PATH}/src/plugins/intel_gpu/thirdparty/onednn_gpu") @@ -59,23 +50,23 @@ if(ENABLE_INTEL_GPU) list(APPEND FEATURE_OPTIONS "-DENABLE_SYSTEM_OPENCL=ON" - "-DPYTHON_EXECUTABLE=${PYTHON3}") + "-DPython3_EXECUTABLE=${PYTHON3}") endif() if(ENABLE_INTEL_CPU) vcpkg_from_github( OUT_SOURCE_PATH DEP_SOURCE_PATH REPO openvinotoolkit/oneDNN - REF a1aa20ca8f19465dc2fd18389953ed83798b2fd3 - SHA512 0ff5b235a6f349ad94f52a3b8282f5c825eac7275ad784986d7f533863ace7a4ed71094b9f5cac85d473d2678e197727c1cb33dee5cf75cd793ded7be58f946e + REF 2ead5d4fe5993a797d9a7a4b8b5557b96f6ec90e + SHA512 e254f331275e174e7f191f99bf2abcea73aa5954efd0984e1a8418ffa73d2de1ad148e77314b4be04f36ac293202e01835be0ac6e65a6af1391258987aaa8dc4 ) file(COPY "${DEP_SOURCE_PATH}/" DESTINATION "${SOURCE_PATH}/src/plugins/intel_cpu/thirdparty/onednn") vcpkg_from_github( OUT_SOURCE_PATH DEP_SOURCE_PATH REPO openvinotoolkit/mlas - REF c7c8a631315000f17c650af34431009d2f22129c - SHA512 4146598ce6b30a3eaea544d6703b949061118398e67b773aa11a3c0f3e8fbcc446d09ea893b9879f8869e977162bcada0d4895cb225cf2e2469fb71cd5942e53 + REF f6425b1394334822390fcd9da12788c9cd0d11da + SHA512 3b7fc28ad80a85a459f3370ba84acf79355c3d14be68df57c436e8e0f7b8a3e37ef192fc9b0db2f751dac458f3ef2e9ccb8dbe08e2d31c4636ea30eb970628fe ) file(COPY "${DEP_SOURCE_PATH}/" DESTINATION "${SOURCE_PATH}/src/plugins/intel_cpu/thirdparty/mlas") @@ -93,8 +84,8 @@ if(ENABLE_INTEL_CPU) vcpkg_from_github( OUT_SOURCE_PATH DEP_SOURCE_PATH REPO ARM-software/ComputeLibrary - REF v23.02.1 - SHA512 ee9439e0804bacd365f079cedc548ffe2c12b0d4a86780e0783186884eb5a6d7aa7ceac11c504e242bedc55c3d026b826c90adaafbdbd3e5cfa2562a1c4ee04d + REF v23.08 + SHA512 8379fdf804732ef4e69a3e91807810d413f35855d035cfde9d81059679f62cd625c0347f07dc1f76468dc82c06217a5ae8df25b4581a29558ac32b2a4f7d8af4 ) file(COPY "${DEP_SOURCE_PATH}/" DESTINATION "${SOURCE_PATH}/src/plugins/intel_cpu/thirdparty/ComputeLibrary") endif() @@ -128,7 +119,6 @@ vcpkg_cmake_configure( "-DENABLE_PYTHON=OFF" "-DENABLE_GAPI_PREPROCESSING=OFF" "-DCPACK_GENERATOR=VCPKG" - "-DCMAKE_DISABLE_FIND_PACKAGE_pybind11=ON" ) vcpkg_cmake_install() @@ -140,6 +130,7 @@ vcpkg_copy_pdbs() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") + vcpkg_install_copyright( FILE_LIST "${SOURCE_PATH}/LICENSE" diff --git a/ports/openvino/usage b/ports/openvino/usage index 27e68898dc..ede01545d2 100644 --- a/ports/openvino/usage +++ b/ports/openvino/usage @@ -2,3 +2,9 @@ The package OpenVINO can be used in cmake scripts as: find_package(OpenVINO REQUIRED) target_link_libraries(main PRIVATE openvino::runtime) + +Note: static build of Intel GPU plugin disables usage of oneDNN for GPU, which is important +for decent performance on discrete GPU devices. If you want to levarage performance of dGPU, +please, consider either option: +- Building with 'VCPKG_LIBRARY_LINKAGE=dynamic' +- Disable Intel CPU plugin, because it uses different oneDNN flavor diff --git a/ports/openvino/vcpkg.json b/ports/openvino/vcpkg.json index 60d03bc889..16453bdec9 100644 --- a/ports/openvino/vcpkg.json +++ b/ports/openvino/vcpkg.json @@ -1,8 +1,7 @@ { "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg.schema.json", "name": "openvino", - "version": "2023.1.0", - "port-version": 4, + "version": "2023.2.0", "maintainers": "OpenVINO Developers ", "summary": "This is a port for Open Visual Inference And Optimization toolkit for AI inference", "description": [ @@ -15,7 +14,7 @@ "homepage": "https://github.com/openvinotoolkit/openvino", "documentation": "https://docs.openvino.ai/latest/index.html", "license": "Apache-2.0", - "supports": "!uwp", + "supports": "!uwp & !x86", "dependencies": [ { "name": "pkgconf", @@ -53,7 +52,7 @@ }, { "name": "gpu", - "platform": "x64 & !(osx | uwp) & !static" + "platform": "x64 & !(osx | uwp)" }, "hetero", "ir", @@ -76,9 +75,10 @@ }, "gpu": { "description": "Enables GPU plugin for inference", - "supports": "x64 & !(osx | uwp) & !static", + "supports": "x64 & !(osx | uwp)", "dependencies": [ - "opencl" + "opencl", + "rapidjson" ] }, "hetero": { diff --git a/versions/baseline.json b/versions/baseline.json index 01bc7e6e36..571140da4c 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -6242,7 +6242,7 @@ }, "opencv4": { "baseline": "4.8.0", - "port-version": 10 + "port-version": 11 }, "opendnp3": { "baseline": "3.1.1", @@ -6357,8 +6357,8 @@ "port-version": 6 }, "openvino": { - "baseline": "2023.1.0", - "port-version": 4 + "baseline": "2023.2.0", + "port-version": 0 }, "openvpn3": { "baseline": "3.7.0", diff --git a/versions/o-/opencv4.json b/versions/o-/opencv4.json index be06cfa44c..996f543714 100644 --- a/versions/o-/opencv4.json +++ b/versions/o-/opencv4.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "9d3433d44aaf404378dff91625448de76738a95f", + "version": "4.8.0", + "port-version": 11 + }, { "git-tree": "83f4fcf20bc429d1a01edb9fdf423ef78d18c9b6", "version": "4.8.0", diff --git a/versions/o-/openvino.json b/versions/o-/openvino.json index 8f05d26881..599a4028dc 100644 --- a/versions/o-/openvino.json +++ b/versions/o-/openvino.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "008bb3450506fc167c8928022a1f8782cddff866", + "version": "2023.2.0", + "port-version": 0 + }, { "git-tree": "e33c2a6c920269c1564d88ac95d0933771763ca3", "version": "2023.1.0",