From 901f1e04363b98a7c28ce1f053718e78e371a30e Mon Sep 17 00:00:00 2001 From: Ilya Lavrenov Date: Thu, 29 Oct 2020 10:54:57 +0300 Subject: [PATCH] Removed InferenceEngine dependency on Legacy library (#1932) * Split libraries * Small fixes * Fixes after self-review * Minimized legacy usage * Fixed IE_CPU.onnx_prior_box * Fixed linkage * Temp WA for private plugins * removed comments * Reverted OneHot changes back --- inference-engine/cmake/config.cmake.in | 6 +- .../cmake/developer_package_config.cmake.in | 6 +- inference-engine/cmake/plugins/plugins.cmake | 6 +- .../cmake/share/InferenceEngineConfig.cmake.in | 12 +-- inference-engine/ie_bridges/python/CMakeLists.txt | 6 +- inference-engine/src/cldnn_engine/CMakeLists.txt | 4 +- inference-engine/src/cldnn_engine/cldnn_graph.cpp | 2 +- inference-engine/src/gna_plugin/CMakeLists.txt | 6 +- inference-engine/src/hetero_plugin/CMakeLists.txt | 3 +- .../hetero_plugin/hetero_executable_network.cpp | 2 +- .../src/inference_engine/CMakeLists.txt | 85 ++++++---------------- .../inference_engine/cnn_network_ngraph_impl.cpp | 45 ++---------- .../inference_engine/cnn_network_ngraph_impl.hpp | 21 +----- .../src/inference_engine/file_utils.cpp | 34 +++++++++ .../src/inference_engine/generic_ie.cpp | 2 +- inference-engine/src/inference_engine/ie_data.cpp | 30 ++++++-- .../src/inference_engine/ie_unicode.cpp | 46 ------------ .../shape_infer/ie_built_in_holder.hpp | 6 +- .../shape_infer/ie_simpler_nms_shape_infer.hpp | 2 - inference-engine/src/legacy_api/CMakeLists.txt | 15 ++-- .../legacy_api/include/legacy/cnn_network_impl.hpp | 1 - .../include/legacy/ie_layers_internal.hpp | 1 - .../src/legacy_api/src/cnn_network_impl.cpp | 2 - .../legacy_api/src/ie_cnn_layer_builder_ngraph.h | 2 +- .../CMakeLists.txt | 3 +- inference-engine/src/mkldnn_plugin/CMakeLists.txt | 4 +- .../src/mkldnn_plugin/mkldnn_graph_dumper.cpp | 2 +- .../src/mkldnn_plugin/mkldnn_plugin.cpp | 2 +- inference-engine/src/multi_device/CMakeLists.txt | 2 +- inference-engine/src/plugin_api/generic_ie.hpp | 3 +- .../legacy => plugin_api}/ie_ngraph_utils.hpp | 0 .../src/readers/ir_reader/ie_ir_parser.cpp | 2 +- .../src/readers/ir_reader/ie_ir_parser.hpp | 5 +- .../src/readers/ir_reader_v7/CMakeLists.txt | 2 +- .../ir_reader_v7/ie_cnn_net_reader_impl.cpp | 1 + inference-engine/src/vpu/common/CMakeLists.txt | 3 +- .../graph_transformer/src/utils/runtime_graph.cpp | 2 +- .../src/vpu/myriad_plugin/CMakeLists.txt | 2 +- .../ie_test_utils/common_test_utils/CMakeLists.txt | 1 + .../functional_test_utils/CMakeLists.txt | 5 +- 40 files changed, 153 insertions(+), 231 deletions(-) delete mode 100644 inference-engine/src/inference_engine/ie_unicode.cpp rename inference-engine/src/{legacy_api/include/legacy => plugin_api}/ie_ngraph_utils.hpp (100%) diff --git a/inference-engine/cmake/config.cmake.in b/inference-engine/cmake/config.cmake.in index 3e7e9a8..31485b3 100644 --- a/inference-engine/cmake/config.cmake.in +++ b/inference-engine/cmake/config.cmake.in @@ -3,8 +3,7 @@ # if(DEFINED IE_MAIN_SOURCE_DIR AND TARGET inference_engine) - set(InferenceEngine_LIBRARIES inference_engine_legacy inference_engine - inference_engine_c_api) + set(InferenceEngine_LIBRARIES inference_engine inference_engine_c_api) else() include("${CMAKE_CURRENT_LIST_DIR}/targets.cmake") if(NOT MSVC) @@ -29,8 +28,7 @@ else() endif() get_target_property(InferenceEngine_INCLUDE_DIRS IE::inference_engine INTERFACE_INCLUDE_DIRECTORIES) - set(InferenceEngine_LIBRARIES IE::inference_engine_legacy IE::inference_engine - IE::inference_engine_c_api) + set(InferenceEngine_LIBRARIES IE::inference_engine IE::inference_engine_c_api) foreach(library IN LISTS InferenceEngine_LIBRARIES) if(CMAKE_CROSSCOMPILING AND NOT MSVC) diff --git a/inference-engine/cmake/developer_package_config.cmake.in b/inference-engine/cmake/developer_package_config.cmake.in index db157eb..4f7bfbb 100644 --- a/inference-engine/cmake/developer_package_config.cmake.in +++ b/inference-engine/cmake/developer_package_config.cmake.in @@ -32,15 +32,11 @@ set(GNA "@GNA@") include("${CMAKE_CURRENT_LIST_DIR}/targets_developer.cmake") -# for compatibility -set_property(TARGET IE::inference_engine_legacy APPEND PROPERTY - INTERFACE_INCLUDE_DIRECTORIES "${IE_MAIN_SOURCE_DIR}/src/legacy_api/include/legacy") - # to allow too create ALIAS for IE::inference_engine in 3rd-party projects set_property(TARGET IE::inference_engine PROPERTY IMPORTED_GLOBAL TRUE) get_target_property(InferenceEngine_INCLUDE_DIRS IE::inference_engine INTERFACE_INCLUDE_DIRECTORIES) -set(InferenceEngine_LIBRARIES IE::inference_engine_legacy IE::inference_engine) +set(InferenceEngine_LIBRARIES IE::inference_engine) # # Common cmake includes diff --git a/inference-engine/cmake/plugins/plugins.cmake b/inference-engine/cmake/plugins/plugins.cmake index ef1dccc..3fa6839 100644 --- a/inference-engine/cmake/plugins/plugins.cmake +++ b/inference-engine/cmake/plugins/plugins.cmake @@ -56,9 +56,11 @@ function(ie_add_plugin) target_compile_definitions(${IE_PLUGIN_NAME} PRIVATE IMPLEMENT_INFERENCE_ENGINE_PLUGIN) if(TARGET IE::inference_engine_plugin_api) - target_link_libraries(${IE_PLUGIN_NAME} PRIVATE IE::inference_engine_plugin_api) + target_link_libraries(${IE_PLUGIN_NAME} PRIVATE IE::inference_engine_plugin_api + IE::inference_engine_legacy) else() - target_link_libraries(${IE_PLUGIN_NAME} PRIVATE inference_engine_plugin_api) + target_link_libraries(${IE_PLUGIN_NAME} PRIVATE inference_engine_plugin_api + inference_engine_legacy) endif() if(WIN32) diff --git a/inference-engine/cmake/share/InferenceEngineConfig.cmake.in b/inference-engine/cmake/share/InferenceEngineConfig.cmake.in index 327da89..5ede817 100644 --- a/inference-engine/cmake/share/InferenceEngineConfig.cmake.in +++ b/inference-engine/cmake/share/InferenceEngineConfig.cmake.in @@ -16,7 +16,6 @@ # and the following imported targets: # # IE::inference_engine - The Inference Engine library -# IE::inference_engine_legacy - The Inference Engine library with legacy API for IR v7 and older. # IE::inference_engine_c_api - The Inference Engine C API library # @@ -38,7 +37,7 @@ set(InferenceEngine_FOUND FALSE) if(TARGET IE::inference_engine) set(InferenceEngine_FOUND TRUE) get_target_property(InferenceEngine_INCLUDE_DIRS IE::inference_engine INTERFACE_INCLUDE_DIRECTORIES) - set(InferenceEngine_LIBRARIES IE::inference_engine_legacy IE::inference_engine + set(InferenceEngine_LIBRARIES IE::inference_engine IE::inference_engine_c_api) else() if (WIN32) @@ -85,28 +84,25 @@ else() if(WIN32) find_library(IE_RELEASE_LIBRARY inference_engine@IE_RELEASE_POSTFIX_WIN@ "${IE_LIB_REL_DIR}" NO_DEFAULT_PATH) - find_library(IE_LEGACY_RELEASE_LIBRARY inference_engine_legacy@IE_RELEASE_POSTFIX_WIN@ "${IE_LIB_REL_DIR}" NO_DEFAULT_PATH) find_library(IE_C_API_RELEASE_LIBRARY inference_engine_c_api@IE_RELEASE_POSTFIX_WIN@ "${IE_LIB_REL_DIR}" NO_DEFAULT_PATH) elseif(APPLE) find_library(IE_RELEASE_LIBRARY inference_engine@IE_RELEASE_POSTFIX_MAC@ "${IE_LIB_DIR}" NO_DEFAULT_PATH) - find_library(IE_LEGACY_RELEASE_LIBRARY inference_engine_legacy@IE_RELEASE_POSTFIX_MAC@ "${IE_LIB_DIR}" NO_DEFAULT_PATH) find_library(IE_C_API_RELEASE_LIBRARY inference_engine_c_api@IE_RELEASE_POSTFIX_MAC@ "${IE_LIB_DIR}" NO_DEFAULT_PATH) else() find_library(IE_RELEASE_LIBRARY inference_engine@IE_RELEASE_POSTFIX_LIN@ "${IE_LIB_DIR}" NO_DEFAULT_PATH) - find_library(IE_LEGACY_RELEASE_LIBRARY inference_engine_legacy@IE_RELEASE_POSTFIX_LIN@ "${IE_LIB_DIR}" NO_DEFAULT_PATH) find_library(IE_C_API_RELEASE_LIBRARY inference_engine_c_api@IE_RELEASE_POSTFIX_LIN@ "${IE_LIB_DIR}" NO_DEFAULT_PATH) endif() find_package_handle_standard_args( InferenceEngine FOUND_VAR INFERENCEENGINE_FOUND - REQUIRED_VARS IE_RELEASE_LIBRARY IE_LEGACY_RELEASE_LIBRARY IE_C_API_RELEASE_LIBRARY IE_INCLUDE_DIR + REQUIRED_VARS IE_RELEASE_LIBRARY IE_C_API_RELEASE_LIBRARY IE_INCLUDE_DIR FAIL_MESSAGE "Some of mandatory Inference Engine components are not found. Please consult InferenceEgnineConfig.cmake module's help page.") if(INFERENCEENGINE_FOUND) # to keep this line for successful execution in CMake 2.8 set(InferenceEngine_FOUND TRUE) - foreach(ie_library_suffix "" "_legacy" "_c_api") + foreach(ie_library_suffix "" "_c_api") string(TOUPPER "${ie_library_suffix}" ie_library_usuffix) add_library(IE::inference_engine${ie_library_suffix} SHARED IMPORTED GLOBAL) @@ -163,7 +159,7 @@ else() endforeach() set(InferenceEngine_INCLUDE_DIRS ${IE_INCLUDE_DIR}) - set(InferenceEngine_LIBRARIES IE::inference_engine_legacy IE::inference_engine + set(InferenceEngine_LIBRARIES IE::inference_engine IE::inference_engine_c_api) set(IE_EXTERNAL_DIR "${IE_ROOT_DIR}/external") diff --git a/inference-engine/ie_bridges/python/CMakeLists.txt b/inference-engine/ie_bridges/python/CMakeLists.txt index a731f8d..f427760 100644 --- a/inference-engine/ie_bridges/python/CMakeLists.txt +++ b/inference-engine/ie_bridges/python/CMakeLists.txt @@ -18,10 +18,12 @@ elseif(ARCH STREQUAL "i386") endif() if(DEFINED IE_MAIN_SOURCE_DIR) - set(InferenceEngine_LIBRARIES inference_engine inference_engine_plugin_api) + set(InferenceEngine_LIBRARIES inference_engine) + list(APPEND InferenceEngine_LIBRARIES inference_engine_legacy) # TODO: remove in PR #2755 else() find_package(InferenceEngineDeveloperPackage REQUIRED) - set(InferenceEngine_LIBRARIES IE::inference_engine IE::inference_engine_plugin_api) + set(InferenceEngine_LIBRARIES IE::inference_engine) + list(APPEND InferenceEngine_LIBRARIES IE::inference_engine_legacy) # TODO: remove in PR #2755 endif() if(UNIX) diff --git a/inference-engine/src/cldnn_engine/CMakeLists.txt b/inference-engine/src/cldnn_engine/CMakeLists.txt index 8389da2..6788214 100644 --- a/inference-engine/src/cldnn_engine/CMakeLists.txt +++ b/inference-engine/src/cldnn_engine/CMakeLists.txt @@ -21,7 +21,9 @@ ie_add_plugin(NAME ${TARGET_NAME} SOURCES ${MAIN_SRC} ${LIBRARY_HEADERS} VERSION_DEFINES_FOR cldnn_engine.cpp) -target_link_libraries(${TARGET_NAME} PRIVATE clDNN_lib pugixml inference_engine inference_engine_transformations) +target_link_libraries(${TARGET_NAME} PRIVATE clDNN_lib pugixml + inference_engine inference_engine_legacy + inference_engine_transformations) if(USE_CNNNETWORK_LPT) target_link_libraries(${TARGET_NAME} PRIVATE inference_engine_lp_transformations_legacy) diff --git a/inference-engine/src/cldnn_engine/cldnn_graph.cpp b/inference-engine/src/cldnn_engine/cldnn_graph.cpp index 7357769..3bd2afa 100644 --- a/inference-engine/src/cldnn_engine/cldnn_graph.cpp +++ b/inference-engine/src/cldnn_engine/cldnn_graph.cpp @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include "generic_ie.hpp" #include diff --git a/inference-engine/src/gna_plugin/CMakeLists.txt b/inference-engine/src/gna_plugin/CMakeLists.txt index 2f018c7..84a118a 100644 --- a/inference-engine/src/gna_plugin/CMakeLists.txt +++ b/inference-engine/src/gna_plugin/CMakeLists.txt @@ -31,7 +31,7 @@ ie_add_plugin(NAME ${TARGET_NAME} # saving rpath to GNA shared library be used by CI log_rpath_from_dir(GNA ${libGNA_LIBRARIES_BASE_PATH}) -target_link_libraries(${TARGET_NAME} PRIVATE inference_engine Threads::Threads libGNA) +target_link_libraries(${TARGET_NAME} PRIVATE inference_engine inference_engine_legacy Threads::Threads libGNA) target_include_directories(${TARGET_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) target_compile_definitions(${TARGET_NAME} @@ -58,8 +58,8 @@ target_compile_definitions(${TARGET_NAME}_test_static USE_STATIC_IE) target_link_libraries(${TARGET_NAME}_test_static PUBLIC inference_engine_preproc_s libGNA::API) - -target_include_directories(${TARGET_NAME}_test_static PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) +target_include_directories(${TARGET_NAME}_test_static PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} + $) set_target_properties(${TARGET_NAME}_test_static PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME}_test_static) set_target_properties(${TARGET_NAME} ${TARGET_NAME}_test_static diff --git a/inference-engine/src/hetero_plugin/CMakeLists.txt b/inference-engine/src/hetero_plugin/CMakeLists.txt index 7894e95..553f752 100644 --- a/inference-engine/src/hetero_plugin/CMakeLists.txt +++ b/inference-engine/src/hetero_plugin/CMakeLists.txt @@ -16,7 +16,8 @@ ie_faster_build(${TARGET_NAME} UNITY ) -target_link_libraries(${TARGET_NAME} PRIVATE inference_engine ade pugixml ${NGRAPH_LIBRARIES} inference_engine_transformations) +target_link_libraries(${TARGET_NAME} PRIVATE ade pugixml inference_engine + inference_engine_legacy ${NGRAPH_LIBRARIES} inference_engine_transformations) ie_add_api_validator_post_build_step(TARGET ${TARGET_NAME}) diff --git a/inference-engine/src/hetero_plugin/hetero_executable_network.cpp b/inference-engine/src/hetero_plugin/hetero_executable_network.cpp index 1307ee5..59ba9d3 100644 --- a/inference-engine/src/hetero_plugin/hetero_executable_network.cpp +++ b/inference-engine/src/hetero_plugin/hetero_executable_network.cpp @@ -23,7 +23,7 @@ #include #include -#include "legacy/ie_ngraph_utils.hpp" +#include "ie_ngraph_utils.hpp" #include "ie_plugin_config.hpp" #include "cpp_interfaces/interface/ie_internal_plugin_config.hpp" #include "hetero/hetero_plugin_config.hpp" diff --git a/inference-engine/src/inference_engine/CMakeLists.txt b/inference-engine/src/inference_engine/CMakeLists.txt index bbcd7e2..b530469 100644 --- a/inference-engine/src/inference_engine/CMakeLists.txt +++ b/inference-engine/src/inference_engine/CMakeLists.txt @@ -7,27 +7,22 @@ set (TARGET_NAME "inference_engine") file (GLOB LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp ${CMAKE_CURRENT_SOURCE_DIR}/threading/*.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/shape_infer/ie_built_in_holder.cpp ) +# TODO: WA for OneHot pass usage in reshape +set(LEGACY_SRC_ROOT "${IE_MAIN_SOURCE_DIR}/src/legacy_api/src/") +list(APPEND LIBRARY_SRC + "${LEGACY_SRC_ROOT}/transformations/convert_opset1_to_legacy/convert_one_hot_to_one_hot_ie.cpp" + "${LEGACY_SRC_ROOT}/ngraph_ops/onehot_ie.cpp") + set(IE_STATIC_DEPENDENT_FILES ${CMAKE_CURRENT_SOURCE_DIR}/file_utils.cpp) list(REMOVE_ITEM LIBRARY_SRC ${IE_STATIC_DEPENDENT_FILES}) -set(IE_BASE_SOURCE_FILES - ${CMAKE_CURRENT_SOURCE_DIR}/cnn_network_ngraph_impl.cpp - # will be merged with file_utils.cpp after IE dependency on legacy is removed - ${CMAKE_CURRENT_SOURCE_DIR}/ie_unicode.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/generic_ie.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/blob_factory.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/ie_blob_common.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/ie_data.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/ie_layouts.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/ie_memcpy.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/ie_parameter.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/ie_rtti.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/precision_utils.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/shape_infer/ie_built_in_holder.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/system_allocator.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/system_allocator.hpp) +file (GLOB LIBRARY_HEADERS + ${CMAKE_CURRENT_SOURCE_DIR}/*.h + ${CMAKE_CURRENT_SOURCE_DIR}/*.hpp + ) if (LINUX) file (GLOB LIBRARY_SRC @@ -36,10 +31,9 @@ if (LINUX) file (GLOB LIBRARY_HEADERS ${LIBRARY_HEADERS} ${CMAKE_CURRENT_SOURCE_DIR}/os/lin/*.hpp) -endif() - -if(UNIX) - list(APPEND IE_BASE_SOURCE_FILES ${CMAKE_CURRENT_SOURCE_DIR}/os/lin/lin_shared_object_loader.cpp) +elseif (UNIX) + list (APPEND LIBRARY_SRC + ${CMAKE_CURRENT_SOURCE_DIR}/os/lin/lin_shared_object_loader.cpp) endif() if (WIN32) @@ -49,16 +43,8 @@ if (WIN32) file (GLOB LIBRARY_HEADERS ${LIBRARY_HEADERS} ${CMAKE_CURRENT_SOURCE_DIR}/os/win/*.hpp) - list(APPEND IE_BASE_SOURCE_FILES ${CMAKE_CURRENT_SOURCE_DIR}/os/win/win_shared_object_loader.cpp) endif() -list(REMOVE_ITEM LIBRARY_SRC ${IE_BASE_SOURCE_FILES}) - -file (GLOB LIBRARY_HEADERS - ${CMAKE_CURRENT_SOURCE_DIR}/*.h - ${CMAKE_CURRENT_SOURCE_DIR}/*.hpp - ) - if(ENABLE_SSE42) file(GLOB SSE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/cpu_x86_sse42/*.cpp) file(GLOB SSE_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/cpu_x86_sse42/*.hpp) @@ -97,7 +83,6 @@ add_library(${TARGET_NAME}_plugin_api INTERFACE) target_include_directories(${TARGET_NAME}_plugin_api INTERFACE "${IE_MAIN_SOURCE_DIR}/src/plugin_api" - "${IE_MAIN_SOURCE_DIR}/src/legacy_api/include" $ ${PUBLIC_HEADERS_DIR}) @@ -110,26 +95,6 @@ file(GLOB_RECURSE plugin_api_src "${IE_MAIN_SOURCE_DIR}/src/plugin_api/*.hpp" add_cpplint_target(${TARGET_NAME}_plugin_api_cpplint FOR_SOURCES ${plugin_api_src}) -# Create common base object library - -add_library(${TARGET_NAME}_common_obj OBJECT - ${IE_BASE_SOURCE_FILES}) - -ie_faster_build(${TARGET_NAME}_common_obj - UNITY - PCH PRIVATE "precomp.hpp" -) - -target_compile_definitions(${TARGET_NAME}_common_obj PRIVATE IMPLEMENT_INFERENCE_ENGINE_API) -target_include_directories(${TARGET_NAME}_common_obj PRIVATE - "${CMAKE_CURRENT_SOURCE_DIR}" - $ - $) - -target_include_directories(${TARGET_NAME}_common_obj SYSTEM PRIVATE - $ - $) - # Create object library add_library(${TARGET_NAME}_obj OBJECT @@ -148,11 +113,11 @@ target_include_directories(${TARGET_NAME}_obj SYSTEM PRIVATE $ + $ $ $) -target_include_directories(${TARGET_NAME}_obj PRIVATE $) - if(ENABLE_MKL_DNN) target_include_directories(${TARGET_NAME}_obj SYSTEM PRIVATE "${IE_MAIN_SOURCE_DIR}/thirdparty/mkl-dnn/src/cpu/xbyak") endif() @@ -169,12 +134,11 @@ add_library(${TARGET_NAME} SHARED set_ie_threading_interface_for(${TARGET_NAME}) -target_link_libraries(${TARGET_NAME} PRIVATE ${CMAKE_DL_LIBS} Threads::Threads pugixml openvino::itt - ${NGRAPH_LIBRARIES} inference_engine_transformations - PUBLIC ${TARGET_NAME}_legacy) +target_link_libraries(${TARGET_NAME} PRIVATE pugixml openvino::itt ${CMAKE_DL_LIBS} Threads::Threads + ${NGRAPH_LIBRARIES} inference_engine_transformations) -target_include_directories(${TARGET_NAME} INTERFACE ${PUBLIC_HEADERS_DIR} PRIVATE - $) +target_include_directories(${TARGET_NAME} INTERFACE ${PUBLIC_HEADERS_DIR} + PRIVATE $) if(WIN32) set_target_properties(${TARGET_NAME} PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME}) @@ -190,9 +154,8 @@ ie_add_api_validator_post_build_step(TARGET ${TARGET_NAME}) # Static library used for unit tests which are always built add_library(${TARGET_NAME}_s STATIC - $ - $ $ + $ ${IE_STATIC_DEPENDENT_FILES}) set_ie_threading_interface_for(${TARGET_NAME}_s) @@ -205,15 +168,15 @@ if(WIN32) set_target_properties(${TARGET_NAME}_s PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME}_s) endif() -target_link_libraries(${TARGET_NAME}_s PRIVATE ${CMAKE_DL_LIBS} ${NGRAPH_LIBRARIES} - inference_engine_transformations openvino::itt +target_link_libraries(${TARGET_NAME}_s PRIVATE openvino::itt ${CMAKE_DL_LIBS} ${NGRAPH_LIBRARIES} + inference_engine_transformations PUBLIC pugixml) target_compile_definitions(${TARGET_NAME}_s PUBLIC USE_STATIC_IE) # LTO -set_target_properties(${TARGET_NAME} ${TARGET_NAME}_obj ${TARGET_NAME}_s ${TARGET_NAME}_common_obj +set_target_properties(${TARGET_NAME} ${TARGET_NAME}_obj ${TARGET_NAME}_s PROPERTIES INTERPROCEDURAL_OPTIMIZATION ${ENABLE_LTO}) # export targets diff --git a/inference-engine/src/inference_engine/cnn_network_ngraph_impl.cpp b/inference-engine/src/inference_engine/cnn_network_ngraph_impl.cpp index 23292b3..379c260 100644 --- a/inference-engine/src/inference_engine/cnn_network_ngraph_impl.cpp +++ b/inference-engine/src/inference_engine/cnn_network_ngraph_impl.cpp @@ -25,9 +25,10 @@ #include #include "transformations/serialize.hpp" +// TODO: remove this pass usage #include -#include +#include "ie_ngraph_utils.hpp" #include "exec_graph_info.hpp" #include "ie_itt.hpp" #include "generic_ie.hpp" @@ -67,6 +68,8 @@ CNNNetwork::CNNNetwork(const std::shared_ptr& graph) { } } +ICNNNetwork::~ICNNNetwork() {} + void CNNNetworkNGraphImpl::createDataForResult(const ::ngraph::Output<::ngraph::Node>& output, const std::string& outName, DataPtr& ptr) { const auto isCompatible = [](size_t size, const Layout& l) -> bool { @@ -180,19 +183,14 @@ CNNNetworkNGraphImpl::CNNNetworkNGraphImpl(const ICNNNetwork& network) { } void CNNNetworkNGraphImpl::setInputInfo(InputInfo::Ptr data) { - if (cnnNetwork) cnnNetwork->setInputInfo(data); _inputData[data->name()] = data; } const std::string& CNNNetworkNGraphImpl::getName() const noexcept { - if (cnnNetwork) { - return cnnNetwork->getName(); - } return _ngraph_function->get_friendly_name(); } InputInfo::Ptr CNNNetworkNGraphImpl::getInput(const std::string& inputName) const noexcept { - if (cnnNetwork) return cnnNetwork->getInput(inputName); auto it = _inputData.find(inputName); if (it == _inputData.end()) { return nullptr; @@ -201,41 +199,25 @@ InputInfo::Ptr CNNNetworkNGraphImpl::getInput(const std::string& inputName) cons } void CNNNetworkNGraphImpl::getOutputsInfo(OutputsDataMap& out) const noexcept { - if (cnnNetwork) { - cnnNetwork->getOutputsInfo(out); - return; - } out = _outputData; } void CNNNetworkNGraphImpl::getInputsInfo(InputsDataMap& inputs) const noexcept { - if (cnnNetwork) { - cnnNetwork->getInputsInfo(inputs); - return; - } inputs = _inputData; } size_t CNNNetworkNGraphImpl::layerCount() const noexcept { - if (cnnNetwork) return cnnNetwork->layerCount(); return _ngraph_function->get_ops().size(); } void CNNNetworkNGraphImpl::validate(int version) { - if (cnnNetwork) - cnnNetwork->validate(); - else - _ngraph_function->validate_nodes_and_infer_types(); + _ngraph_function->validate_nodes_and_infer_types(); } StatusCode CNNNetworkNGraphImpl::addOutput(const std::string& layerName, size_t outputIndex, ResponseDesc* resp) noexcept { OV_ITT_SCOPED_TASK(itt::domains::IE, "CNNNetworkNGraphImpl::addOutput"); - if (cnnNetwork) { - return cnnNetwork->addOutput(layerName, outputIndex, resp); - } - try { for (const auto & layer : _ngraph_function->get_ops()) { if (layer->get_friendly_name() == layerName) { @@ -274,9 +256,6 @@ size_t CNNNetworkNGraphImpl::getBatchSize() const noexcept { // The original code from CNNNetworkImpl just gets the first input and returns the first dimension. // This is not correct in general. We can follow the same semantics, but order of inputs should be // guaranteed to be the same. - if (cnnNetwork) { - return cnnNetwork->getBatchSize(); - } auto params = _ngraph_function->get_parameters(); for (const auto& param : params) { if (param->get_partial_shape().rank().is_dynamic()) @@ -306,8 +285,6 @@ void CNNNetworkNGraphImpl::reshape() { StatusCode CNNNetworkNGraphImpl::reshape(const std::map>& inputShapes, ResponseDesc* responseDesc) noexcept { - if (cnnNetwork) - return cnnNetwork->reshape(inputShapes, responseDesc); try { auto params = _ngraph_function->get_parameters(); @@ -318,8 +295,10 @@ CNNNetworkNGraphImpl::reshape(const std::map>& auto it = inputShapes.find(param->get_friendly_name()); if (it == inputShapes.end()) continue; - if (param->get_partial_shape().is_dynamic() || param->get_shape() != it->second) + if (param->get_partial_shape().is_dynamic() || param->get_shape() != it->second) { needReshape = true; + break; + } } if (needReshape) { ngraph::pass::Manager ssr_manager; @@ -446,8 +425,6 @@ StatusCode CNNNetworkNGraphImpl::serialize(const std::string& xmlPath, } StatusCode CNNNetworkNGraphImpl::setBatchSize(size_t size, ResponseDesc* responseDesc) noexcept { - if (cnnNetwork) - return cnnNetwork->setBatchSize(size, responseDesc); try { if (getBatchSize() == size) return OK; auto original_parameters = _ngraph_function->get_parameters(); @@ -491,9 +468,3 @@ StatusCode CNNNetworkNGraphImpl::setBatchSize(size_t size, ResponseDesc* respons return DescriptionBuffer(GENERAL_ERROR, responseDesc) << ex.what(); } } - -void CNNNetworkNGraphImpl::convertToCNNNetworkImpl() { - OV_ITT_SCOPED_TASK(itt::domains::IE, "CNNNetworkNGraphImpl::convertToCNNNetworkImpl"); - if (!cnnNetwork) - cnnNetwork = std::make_shared(*this); -} diff --git a/inference-engine/src/inference_engine/cnn_network_ngraph_impl.hpp b/inference-engine/src/inference_engine/cnn_network_ngraph_impl.hpp index f7a7f56..7eb5c5d 100644 --- a/inference-engine/src/inference_engine/cnn_network_ngraph_impl.hpp +++ b/inference-engine/src/inference_engine/cnn_network_ngraph_impl.hpp @@ -28,8 +28,6 @@ #include "ie_data.h" #include "ie_input_info.hpp" -#include - namespace InferenceEngine { namespace details { @@ -67,10 +65,10 @@ public: } std::shared_ptr getFunction() const noexcept override { - return !cnnNetwork ? _ngraph_function : nullptr; + return _ngraph_function; } std::shared_ptr<::ngraph::Function> getFunction() noexcept override { - return !cnnNetwork ? _ngraph_function : nullptr; + return _ngraph_function; } virtual void validate(int = 10); @@ -81,15 +79,15 @@ public: StatusCode serialize(const std::string& xmlPath, const std::string& binPath, ResponseDesc* resp) const noexcept override; + // used by convertFunctionToICNNNetwork from legacy library + std::map _data; protected: virtual std::shared_ptr<::ngraph::Function> cloneFunction(bool constFolding = false) const; std::shared_ptr<::ngraph::Function> _ngraph_function; private: - std::map _data; InferenceEngine::InputsDataMap _inputData; std::map _outputData; - std::shared_ptr cnnNetwork; /** * @brief Create DataPtr for nGraph operation @@ -101,17 +99,6 @@ private: void createDataForResult(const ::ngraph::Output<::ngraph::Node>& output, const std::string& outName, DataPtr& ptr); /** - * @brief Converts ngraph::Function to old CNNNetworkImpl representation - */ - void convertToCNNNetworkImpl(); - - friend INFERENCE_ENGINE_API_CPP(void) - convertFunctionToICNNNetwork(const std::shared_ptr& graph, - const ICNNNetwork& nGraphImpl, - CNNNetworkImpl* cnnNetworkImpl, - bool keep_constant_inputs); - - /** * @brief Reshape on the same shape */ void reshape(); diff --git a/inference-engine/src/inference_engine/file_utils.cpp b/inference-engine/src/inference_engine/file_utils.cpp index 563d2dc..eb31ba4 100644 --- a/inference-engine/src/inference_engine/file_utils.cpp +++ b/inference-engine/src/inference_engine/file_utils.cpp @@ -18,6 +18,10 @@ # include # include # include +# ifdef ENABLE_UNICODE_PATH_SUPPORT +# include +# include +# endif #else # if defined(WINAPI_FAMILY) && !WINAPI_PARTITION_DESKTOP # error "Only WINAPI_PARTITION_DESKTOP is supported, because of GetModuleHandleEx[A|W]" @@ -25,6 +29,36 @@ # include #endif +#ifdef ENABLE_UNICODE_PATH_SUPPORT + +std::string FileUtils::wStringtoMBCSstringChar(const std::wstring& wstr) { +#ifdef _WIN32 + int size_needed = WideCharToMultiByte(CP_UTF8, 0, &wstr[0], (int)wstr.size(), NULL, 0, NULL, NULL); // NOLINT + std::string strTo(size_needed, 0); + WideCharToMultiByte(CP_UTF8, 0, &wstr[0], (int)wstr.size(), &strTo[0], size_needed, NULL, NULL); // NOLINT + return strTo; +#else + std::wstring_convert> wstring_decoder; + return wstring_decoder.to_bytes(wstr); +#endif +} + +std::wstring FileUtils::multiByteCharToWString(const char* str) { +#ifdef _WIN32 + int strSize = static_cast(std::strlen(str)); + int size_needed = MultiByteToWideChar(CP_UTF8, 0, str, strSize, NULL, 0); + std::wstring wstrTo(size_needed, 0); + MultiByteToWideChar(CP_UTF8, 0, str, strSize, &wstrTo[0], size_needed); + return wstrTo; +#else + std::wstring_convert> wstring_encoder; + std::wstring result = wstring_encoder.from_bytes(str); + return result; +#endif +} + +#endif // ENABLE_UNICODE_PATH_SUPPORT + long long FileUtils::fileSize(const char* charfilepath) { #if defined(ENABLE_UNICODE_PATH_SUPPORT) && defined(_WIN32) std::wstring widefilename = FileUtils::multiByteCharToWString(charfilepath); diff --git a/inference-engine/src/inference_engine/generic_ie.cpp b/inference-engine/src/inference_engine/generic_ie.cpp index dd0d22b..4dd9ae4 100644 --- a/inference-engine/src/inference_engine/generic_ie.cpp +++ b/inference-engine/src/inference_engine/generic_ie.cpp @@ -14,8 +14,8 @@ #include #include "blob_factory.hpp" +#include #include "shape_infer/ie_ishape_infer_extension.hpp" -#include #include "ngraph/util.hpp" #include "ngraph/graph_util.hpp" #include "ngraph/validation_util.hpp" diff --git a/inference-engine/src/inference_engine/ie_data.cpp b/inference-engine/src/inference_engine/ie_data.cpp index c3dc492..3c6a644 100644 --- a/inference-engine/src/inference_engine/ie_data.cpp +++ b/inference-engine/src/inference_engine/ie_data.cpp @@ -2,8 +2,6 @@ // SPDX-License-Identifier: Apache-2.0 // -#include - #include #include #include @@ -13,7 +11,6 @@ using namespace InferenceEngine; - Blob::Ptr Blob::CreateFromData(const DataPtr& data) { // TODO Here some decision should be made about the layout. // For now we just pass the layout and use conversion to NCHW for ANY. @@ -44,13 +41,28 @@ Blob::Ptr Blob::CreateFromData(const DataPtr& data) { } } +namespace InferenceEngine { + +class CNNLayer; + +/** + * @brief A smart pointer to the CNNLayer + */ +using CNNLayerPtr = std::shared_ptr; +/** + * @brief A smart weak pointer to the CNNLayer + */ +using CNNLayerWeakPtr = std::weak_ptr; + +} // namespace InferenceEngine + class Data::Impl { public: /** * @brief A pointer to the layer that creates this data element, null for input data elements */ CNNLayerWeakPtr creatorLayer; - + /** * @brief A map of layers that use this node as input. * It is useful for recursive NN graph traversal. @@ -137,14 +149,18 @@ const SizeVector& Data::getDims() const { // compatibility -CNNLayerWeakPtr& InferenceEngine::getCreatorLayer(const DataPtr & data) { +namespace InferenceEngine { + +INFERENCE_ENGINE_API_CPP(CNNLayerWeakPtr&) getCreatorLayer(const DataPtr & data) { return data->_impl->creatorLayer; } -std::map& InferenceEngine::getInputTo(const DataPtr & data) { +INFERENCE_ENGINE_API_CPP(std::map&) getInputTo(const DataPtr & data) { return data->_impl->inputTo; } -std::map& InferenceEngine::getInputTo(Data * data) { +INFERENCE_ENGINE_API_CPP(std::map&) getInputTo(Data * data) { return data->_impl->inputTo; } + +} // namespace InferenceEngine diff --git a/inference-engine/src/inference_engine/ie_unicode.cpp b/inference-engine/src/inference_engine/ie_unicode.cpp deleted file mode 100644 index 7d0fdbd..0000000 --- a/inference-engine/src/inference_engine/ie_unicode.cpp +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright (C) 2018-2020 Intel Corporation -// SPDX-License-Identifier: Apache-2.0 -// - -#include - -#include - -#ifndef _WIN32 -# ifdef ENABLE_UNICODE_PATH_SUPPORT -# include -# include -# endif -#else -# include -#endif - -#ifdef ENABLE_UNICODE_PATH_SUPPORT - -std::string FileUtils::wStringtoMBCSstringChar(const std::wstring& wstr) { -#ifdef _WIN32 - int size_needed = WideCharToMultiByte(CP_UTF8, 0, &wstr[0], (int)wstr.size(), NULL, 0, NULL, NULL); // NOLINT - std::string strTo(size_needed, 0); - WideCharToMultiByte(CP_UTF8, 0, &wstr[0], (int)wstr.size(), &strTo[0], size_needed, NULL, NULL); // NOLINT - return strTo; -#else - std::wstring_convert> wstring_decoder; - return wstring_decoder.to_bytes(wstr); -#endif -} - -std::wstring FileUtils::multiByteCharToWString(const char* str) { -#ifdef _WIN32 - int strSize = static_cast(std::strlen(str)); - int size_needed = MultiByteToWideChar(CP_UTF8, 0, str, strSize, NULL, 0); - std::wstring wstrTo(size_needed, 0); - MultiByteToWideChar(CP_UTF8, 0, str, strSize, &wstrTo[0], size_needed); - return wstrTo; -#else - std::wstring_convert> wstring_encoder; - std::wstring result = wstring_encoder.from_bytes(str); - return result; -#endif -} - -#endif // ENABLE_UNICODE_PATH_SUPPORT diff --git a/inference-engine/src/inference_engine/shape_infer/ie_built_in_holder.hpp b/inference-engine/src/inference_engine/shape_infer/ie_built_in_holder.hpp index b2244fc..5ac7edc 100644 --- a/inference-engine/src/inference_engine/shape_infer/ie_built_in_holder.hpp +++ b/inference-engine/src/inference_engine/shape_infer/ie_built_in_holder.hpp @@ -19,7 +19,7 @@ namespace InferenceEngine { namespace ShapeInfer { /** - *@brief Holder of shape infer implementations for build-in IE layers, that plugins support out-of-the-box + * @brief Holder of shape infer implementations for build-in IE layers, that plugins support out-of-the-box */ class BuiltInShapeInferHolder : public IShapeInferExtension { struct ImplsHolder { @@ -36,9 +36,9 @@ public: void Release() noexcept override { delete this; - }; + } - void Unload() noexcept override {}; + void Unload() noexcept override {} static void AddImpl(const std::string& name, const IShapeInferImpl::Ptr& impl); diff --git a/inference-engine/src/inference_engine/shape_infer/ie_simpler_nms_shape_infer.hpp b/inference-engine/src/inference_engine/shape_infer/ie_simpler_nms_shape_infer.hpp index 34dc4ce..882f479 100644 --- a/inference-engine/src/inference_engine/shape_infer/ie_simpler_nms_shape_infer.hpp +++ b/inference-engine/src/inference_engine/shape_infer/ie_simpler_nms_shape_infer.hpp @@ -4,8 +4,6 @@ #pragma once -#include - #include #include #include diff --git a/inference-engine/src/legacy_api/CMakeLists.txt b/inference-engine/src/legacy_api/CMakeLists.txt index a7fb772..2058e61 100644 --- a/inference-engine/src/legacy_api/CMakeLists.txt +++ b/inference-engine/src/legacy_api/CMakeLists.txt @@ -35,8 +35,9 @@ set_ie_threading_interface_for(${TARGET_NAME}_obj) target_compile_definitions(${TARGET_NAME}_obj PRIVATE IMPLEMENT_INFERENCE_ENGINE_API) target_include_directories(${TARGET_NAME}_obj PRIVATE - ${PUBLIC_HEADERS_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/src - ${IE_MAIN_SOURCE_DIR}/src/inference_engine # For CNNNetworkNGraphImpl + ${PUBLIC_HEADERS_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/src + ${IE_MAIN_SOURCE_DIR}/src/inference_engine # For CNNNetworkNGraphImpl $ $ $ @@ -44,13 +45,15 @@ target_include_directories(${TARGET_NAME}_obj PRIVATE # Create shared library -add_library(${TARGET_NAME} SHARED - $ - $) +add_library(${TARGET_NAME} SHARED $) set_ie_threading_interface_for(${TARGET_NAME}) -target_link_libraries(${TARGET_NAME} PRIVATE ${CMAKE_DL_LIBS} ${NGRAPH_LIBRARIES} inference_engine_transformations pugixml openvino::itt) +target_link_libraries(${TARGET_NAME} PUBLIC inference_engine + PRIVATE pugixml openvino::itt + ${NGRAPH_LIBRARIES} inference_engine_transformations) + +target_include_directories(${TARGET_NAME} INTERFACE ${PUBLIC_HEADERS_DIR}) add_cpplint_target(${TARGET_NAME}_cpplint FOR_TARGETS ${TARGET_NAME}) diff --git a/inference-engine/src/legacy_api/include/legacy/cnn_network_impl.hpp b/inference-engine/src/legacy_api/include/legacy/cnn_network_impl.hpp index 506ce35..8cfb0c5 100644 --- a/inference-engine/src/legacy_api/include/legacy/cnn_network_impl.hpp +++ b/inference-engine/src/legacy_api/include/legacy/cnn_network_impl.hpp @@ -15,7 +15,6 @@ #include "ie_data.h" #include "ie_input_info.hpp" #include -#include "description_buffer.hpp" #include diff --git a/inference-engine/src/legacy_api/include/legacy/ie_layers_internal.hpp b/inference-engine/src/legacy_api/include/legacy/ie_layers_internal.hpp index 32fdf9f..3d6447f 100644 --- a/inference-engine/src/legacy_api/include/legacy/ie_layers_internal.hpp +++ b/inference-engine/src/legacy_api/include/legacy/ie_layers_internal.hpp @@ -5,7 +5,6 @@ #pragma once #include -#include "ie_api.h" #include #include "legacy/ie_util_internal.hpp" diff --git a/inference-engine/src/legacy_api/src/cnn_network_impl.cpp b/inference-engine/src/legacy_api/src/cnn_network_impl.cpp index 4e45abc..8c3f821 100644 --- a/inference-engine/src/legacy_api/src/cnn_network_impl.cpp +++ b/inference-engine/src/legacy_api/src/cnn_network_impl.cpp @@ -84,8 +84,6 @@ std::map getConstLayersMap(const ICNNNetwork& network) { return result; } -ICNNNetwork::~ICNNNetwork() {} - CNNNetworkImpl::CNNNetworkImpl() {} CNNNetworkImpl::CNNNetworkImpl(const ICNNNetwork & ngraphImpl) { diff --git a/inference-engine/src/legacy_api/src/ie_cnn_layer_builder_ngraph.h b/inference-engine/src/legacy_api/src/ie_cnn_layer_builder_ngraph.h index 0f6b9fe..3391591 100644 --- a/inference-engine/src/legacy_api/src/ie_cnn_layer_builder_ngraph.h +++ b/inference-engine/src/legacy_api/src/ie_cnn_layer_builder_ngraph.h @@ -18,7 +18,7 @@ #include "blob_factory.hpp" #include -#include +#include namespace InferenceEngine { diff --git a/inference-engine/src/low_precision_transformations_legacy/CMakeLists.txt b/inference-engine/src/low_precision_transformations_legacy/CMakeLists.txt index 5a8f4f9..322d37e 100644 --- a/inference-engine/src/low_precision_transformations_legacy/CMakeLists.txt +++ b/inference-engine/src/low_precision_transformations_legacy/CMakeLists.txt @@ -29,7 +29,8 @@ ie_faster_build(${TARGET_NAME} target_compile_definitions(${TARGET_NAME} PRIVATE IMPLEMENT_INFERENCE_ENGINE_API PUBLIC USE_CNNNETWORK_LPT) -target_link_libraries(${TARGET_NAME} PRIVATE inference_engine openvino::itt) +target_link_libraries(${TARGET_NAME} PUBLIC inference_engine_legacy + PRIVATE openvino::itt) target_include_directories(${TARGET_NAME} PUBLIC ${PUBLIC_HEADERS_DIR} $) diff --git a/inference-engine/src/mkldnn_plugin/CMakeLists.txt b/inference-engine/src/mkldnn_plugin/CMakeLists.txt index 6557976..4177ea8 100644 --- a/inference-engine/src/mkldnn_plugin/CMakeLists.txt +++ b/inference-engine/src/mkldnn_plugin/CMakeLists.txt @@ -168,7 +168,8 @@ set_ie_threading_interface_for(${TARGET_NAME}) target_compile_definitions(${TARGET_NAME} PUBLIC -DMKLDNN_THR=${MKLDNN_THR}) -target_link_libraries(${TARGET_NAME} PRIVATE inference_engine inference_engine_transformations mkldnn) +target_link_libraries(${TARGET_NAME} PRIVATE mkldnn inference_engine inference_engine_legacy + inference_engine_transformations) if(USE_CNNNETWORK_LPT) target_link_libraries(${TARGET_NAME} PRIVATE inference_engine_lp_transformations_legacy) @@ -200,6 +201,7 @@ ie_add_api_validator_post_build_step(TARGET ${TARGET_NAME}) add_library(${TARGET_NAME}_obj OBJECT ${SOURCES} ${HEADERS}) target_include_directories(${TARGET_NAME}_obj PRIVATE $ + $ $ $) diff --git a/inference-engine/src/mkldnn_plugin/mkldnn_graph_dumper.cpp b/inference-engine/src/mkldnn_plugin/mkldnn_graph_dumper.cpp index b481aaf..0c7c36b 100644 --- a/inference-engine/src/mkldnn_plugin/mkldnn_graph_dumper.cpp +++ b/inference-engine/src/mkldnn_plugin/mkldnn_graph_dumper.cpp @@ -5,7 +5,7 @@ #include "mkldnn_graph_dumper.h" #include #include -#include +#include #include "exec_graph_info.hpp" #include "mkldnn_debug.h" #include "generic_ie.hpp" diff --git a/inference-engine/src/mkldnn_plugin/mkldnn_plugin.cpp b/inference-engine/src/mkldnn_plugin/mkldnn_plugin.cpp index 7df7a9f..9061cd0 100644 --- a/inference-engine/src/mkldnn_plugin/mkldnn_plugin.cpp +++ b/inference-engine/src/mkldnn_plugin/mkldnn_plugin.cpp @@ -19,7 +19,7 @@ #include #include #include -#include +#include #include #include diff --git a/inference-engine/src/multi_device/CMakeLists.txt b/inference-engine/src/multi_device/CMakeLists.txt index 92a0a71..549880e 100644 --- a/inference-engine/src/multi_device/CMakeLists.txt +++ b/inference-engine/src/multi_device/CMakeLists.txt @@ -12,7 +12,7 @@ ie_add_plugin(NAME ${TARGET_NAME} SOURCES ${SOURCES} ${HEADERS} VERSION_DEFINES_FOR multi_device.cpp) -target_link_libraries(${TARGET_NAME} PRIVATE inference_engine) +target_link_libraries(${TARGET_NAME} PRIVATE inference_engine_legacy inference_engine) set_ie_threading_interface_for(${TARGET_NAME}) diff --git a/inference-engine/src/plugin_api/generic_ie.hpp b/inference-engine/src/plugin_api/generic_ie.hpp index d3c0725..f921143 100644 --- a/inference-engine/src/plugin_api/generic_ie.hpp +++ b/inference-engine/src/plugin_api/generic_ie.hpp @@ -21,7 +21,7 @@ namespace InferenceEngine { class IShapeInferExtension; using IShapeInferExtensionPtr = std::shared_ptr; -} +} // namespace InferenceEngine namespace ngraph { namespace op { @@ -133,4 +133,3 @@ private: } // namespace op } // namespace ngraph - diff --git a/inference-engine/src/legacy_api/include/legacy/ie_ngraph_utils.hpp b/inference-engine/src/plugin_api/ie_ngraph_utils.hpp similarity index 100% rename from inference-engine/src/legacy_api/include/legacy/ie_ngraph_utils.hpp rename to inference-engine/src/plugin_api/ie_ngraph_utils.hpp diff --git a/inference-engine/src/readers/ir_reader/ie_ir_parser.cpp b/inference-engine/src/readers/ir_reader/ie_ir_parser.cpp index 2dcc319..157984e 100644 --- a/inference-engine/src/readers/ir_reader/ie_ir_parser.cpp +++ b/inference-engine/src/readers/ir_reader/ie_ir_parser.cpp @@ -27,7 +27,7 @@ #include #include "ie_blob_stream.hpp" #include "caseless.hpp" -#include +#include #include "generic_ie.hpp" #include "precision_utils.h" #include "blob_factory.hpp" diff --git a/inference-engine/src/readers/ir_reader/ie_ir_parser.hpp b/inference-engine/src/readers/ir_reader/ie_ir_parser.hpp index 4c70de5..78b64b3 100644 --- a/inference-engine/src/readers/ir_reader/ie_ir_parser.hpp +++ b/inference-engine/src/readers/ir_reader/ie_ir_parser.hpp @@ -7,12 +7,11 @@ #ifdef IR_READER_V10 # include # include -# include -# include +# include #endif // IR_READER_V10 #include -#include +#include #include #include diff --git a/inference-engine/src/readers/ir_reader_v7/CMakeLists.txt b/inference-engine/src/readers/ir_reader_v7/CMakeLists.txt index 639c79d..7920a56 100644 --- a/inference-engine/src/readers/ir_reader_v7/CMakeLists.txt +++ b/inference-engine/src/readers/ir_reader_v7/CMakeLists.txt @@ -29,7 +29,7 @@ target_include_directories(${TARGET_NAME} PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/" "${IE_MAIN_SOURCE_DIR}/src/readers/ir_reader") target_link_libraries(${TARGET_NAME} PRIVATE inference_engine_reader_api inference_engine_plugin_api - inference_engine pugixml openvino::itt) + inference_engine_legacy inference_engine pugixml openvino::itt) ie_add_api_validator_post_build_step(TARGET ${TARGET_NAME}) diff --git a/inference-engine/src/readers/ir_reader_v7/ie_cnn_net_reader_impl.cpp b/inference-engine/src/readers/ir_reader_v7/ie_cnn_net_reader_impl.cpp index 9f72537..6ca8188 100644 --- a/inference-engine/src/readers/ir_reader_v7/ie_cnn_net_reader_impl.cpp +++ b/inference-engine/src/readers/ir_reader_v7/ie_cnn_net_reader_impl.cpp @@ -3,6 +3,7 @@ // #include +#include #include #include diff --git a/inference-engine/src/vpu/common/CMakeLists.txt b/inference-engine/src/vpu/common/CMakeLists.txt index 24c7740..d0cd7c0 100644 --- a/inference-engine/src/vpu/common/CMakeLists.txt +++ b/inference-engine/src/vpu/common/CMakeLists.txt @@ -35,7 +35,8 @@ function(add_common_target TARGET_NAME STATIC_IE) target_include_directories(${TARGET_NAME} SYSTEM PUBLIC $ - $) + $ + $) if(WIN32) target_compile_definitions(${TARGET_NAME} PRIVATE NOMINMAX) diff --git a/inference-engine/src/vpu/graph_transformer/src/utils/runtime_graph.cpp b/inference-engine/src/vpu/graph_transformer/src/utils/runtime_graph.cpp index 55e0e01..cb7f88f 100644 --- a/inference-engine/src/vpu/graph_transformer/src/utils/runtime_graph.cpp +++ b/inference-engine/src/vpu/graph_transformer/src/utils/runtime_graph.cpp @@ -7,7 +7,7 @@ #include "generic_ie.hpp" #include -#include +#include #include #include diff --git a/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt b/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt index bbbf546..8a7afa6 100644 --- a/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt +++ b/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt @@ -39,7 +39,7 @@ endif() # "mvnc" must be the first library in the link list target_link_libraries(${TARGET_NAME} PRIVATE - mvnc inference_engine vpu_graph_transformer) + mvnc inference_engine inference_engine_legacy vpu_graph_transformer) # LTO diff --git a/inference-engine/tests/ie_test_utils/common_test_utils/CMakeLists.txt b/inference-engine/tests/ie_test_utils/common_test_utils/CMakeLists.txt index ed514df..ca58264 100644 --- a/inference-engine/tests/ie_test_utils/common_test_utils/CMakeLists.txt +++ b/inference-engine/tests/ie_test_utils/common_test_utils/CMakeLists.txt @@ -82,6 +82,7 @@ function(add_common_utils ADD_TARGET_NAME) PUBLIC ${IE_TESTS_ROOT}/ie_test_utils $ + $ $ PRIVATE $ diff --git a/inference-engine/tests/ie_test_utils/functional_test_utils/CMakeLists.txt b/inference-engine/tests/ie_test_utils/functional_test_utils/CMakeLists.txt index 2ab1f3e..9f15bce 100644 --- a/inference-engine/tests/ie_test_utils/functional_test_utils/CMakeLists.txt +++ b/inference-engine/tests/ie_test_utils/functional_test_utils/CMakeLists.txt @@ -4,9 +4,8 @@ set(TARGET_NAME funcTestUtils) -list(APPEND EXPORT_DEPENDENCIES commonTestUtils inference_engine inference_engine_legacy) - -list(APPEND EXPORT_DEPENDENCIES inference_engine_lp_transformations) +list(APPEND EXPORT_DEPENDENCIES inference_engine_lp_transformations + commonTestUtils inference_engine inference_engine_legacy) addIeTarget( NAME ${TARGET_NAME} -- 2.7.4