Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NGraph FrontEnd Manager - Basic API #5470

Merged
merged 25 commits into from
Jun 1, 2021
Merged
Show file tree
Hide file tree
Changes from 19 commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
aa12ff7
NGraph - FrontEndManager - common API
nosovmik Apr 29, 2021
4ce398e
Comment out installation rules
nosovmik Apr 29, 2021
cd166a9
Fixed review comment
nosovmik Apr 30, 2021
7cde9c9
Additional cmake cleanup
nosovmik Apr 30, 2021
90a4e2a
More fixes of cmakelists
nosovmik Apr 30, 2021
fa893d3
Changing template file name for frontends
nosovmik Apr 30, 2021
718a1d0
Changed copyrights
nosovmik Apr 30, 2021
8e28efd
Reuse ngraph-utils for file-related operations
nosovmik Apr 30, 2021
36c6534
Correct of frontend file extension for macos
nosovmik May 1, 2021
fc9d05c
Renamed all methods to according to ngraph-style
nosovmik May 5, 2021
6bd62c1
Fix review comments
nosovmik May 11, 2021
481ecf1
Update docs for FrontEndCapabilities
nosovmik May 12, 2021
c6184ad
Use constants for flags instead of 'enum'
nosovmik May 12, 2021
46df0b3
clang style fix
nosovmik May 12, 2021
44cf8f3
Fix comment: using namespace ngraph...
nosovmik May 13, 2021
8722f3b
Fix comment: use replace "frontend_manager" with ${TARGET_NAME} in CM…
nosovmik May 13, 2021
bd8c73e
Comment fix: rename 'generic' folder to 'frontend_manager'
nosovmik May 13, 2021
e85276a
Update documentation comments
nosovmik May 13, 2021
52de4e4
Set FrontEndManager class as 'final'
nosovmik May 14, 2021
53df7af
Merge remote-tracking branch 'upstream/master' into fe_manager
nosovmik May 26, 2021
13f1ffa
Apply review comments
nosovmik May 26, 2021
a5396c4
renamed get_place_by_name_and... to get_place_by_operation_name_and...
nosovmik May 26, 2021
6394240
Separated frontend_manager.hpp into 4 header files
nosovmik May 31, 2021
0c382c2
Merge remote-tracking branch 'upstream/master' into fe_manager
nosovmik May 31, 2021
93093c8
Merge remote-tracking branch 'upstream/master' into fe_manager
nosovmik May 31, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions ngraph/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,15 @@ set(NGRAPH_INCLUDE_PATH
${CMAKE_CURRENT_SOURCE_DIR}/core/include
)

set(FRONTEND_INCLUDE_PATH
${CMAKE_CURRENT_SOURCE_DIR}/frontend/frontend_manager/include
)

# Will be used by frontends to construct frontend-specific source location paths
set(FRONTEND_BASE_PATH
nosovmik marked this conversation as resolved.
Show resolved Hide resolved
${CMAKE_CURRENT_SOURCE_DIR}/frontend
)

if (APPLE)
# Enable MACOS_RPATH by default.
cmake_policy(SET CMP0042 NEW)
Expand Down
2 changes: 2 additions & 0 deletions ngraph/frontend/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
# SPDX-License-Identifier: Apache-2.0
#

add_subdirectory(frontend_manager)

if (NGRAPH_ONNX_IMPORT_ENABLE)
add_subdirectory(onnx_common)
add_subdirectory(onnx_import)
Expand Down
35 changes: 35 additions & 0 deletions ngraph/frontend/frontend_manager/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Copyright (C) 2018-2021 Intel Corporation
# SPDX-License-Identifier: Apache-2.0
#

set(TARGET_NAME "frontend_manager")

file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
file(GLOB_RECURSE LIBRARY_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/src/*.hpp)
file(GLOB_RECURSE LIBRARY_PUBLIC_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/include/*.hpp)

set(FRONTEND_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/include)

source_group("src" FILES ${LIBRARY_SRC})
source_group("include" FILES ${LIBRARY_HEADERS})
source_group("public include" FILES ${LIBRARY_PUBLIC_HEADERS})

# Create shared library
add_library(${TARGET_NAME} SHARED ${LIBRARY_SRC} ${LIBRARY_HEADERS} ${LIBRARY_PUBLIC_HEADERS})
add_library(ngraph::${TARGET_NAME} ALIAS ${TARGET_NAME})

target_link_libraries(${TARGET_NAME} PRIVATE ${CMAKE_DL_LIBS} ngraph)

add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME})

if(COMMAND ie_add_vs_version_file)
ie_add_vs_version_file(NAME ${TARGET_NAME}
FILEDESCRIPTION "Manager of OpenVINO nGraph Frontends")
endif()

set(FRONTEND_INSTALL_INCLUDE "${NGRAPH_INSTALL_INCLUDE}/ngraph/frontend/frontend_manager")
target_include_directories(${TARGET_NAME} PUBLIC $<BUILD_INTERFACE:${FRONTEND_INCLUDE_DIR}>
$<INSTALL_INTERFACE:${FRONTEND_INSTALL_INCLUDE}>)
target_include_directories(${TARGET_NAME} PRIVATE ${NGRAPH_INCLUDE_PATH} ${FRONTEND_INCLUDE_DIR})

target_include_directories(${TARGET_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src)

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
// Copyright (C) 2018-2021 Intel Corporation
// SPDX-License-Identifier: Apache-2.0
//

#pragma once

#include "ngraph/visibility.hpp"

// Increment each time when FrontEnd/InputModel/Place interface is changed
#define OV_FRONTEND_API_VERSION 1

// Defined if cmake is building the frontend_manager DLL (instead of using it)
#ifdef frontend_manager_EXPORTS
#define FRONTEND_API NGRAPH_HELPER_DLL_EXPORT
#else
#define FRONTEND_API NGRAPH_HELPER_DLL_IMPORT
#endif // frontend_manager_EXPORTS
Loading