Add new sysman directory inside level_zero

In order to support latest spec, where sysman's initialization
could happen independent of core's initialization, add a new sysman
directory inside level_zero.

Related-To: LOCI-3887

Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
This commit is contained in:
Jitendra Sharma
2023-01-31 17:00:21 +00:00
committed by Compute-Runtime-Automation
parent 2fd951186c
commit c6ae892c1c
4 changed files with 133 additions and 0 deletions

View File

@@ -212,6 +212,7 @@ if(BUILD_WITH_L0)
include_directories("${CMAKE_CURRENT_SOURCE_DIR}") include_directories("${CMAKE_CURRENT_SOURCE_DIR}")
include_directories(ddi${BRANCH_DIR_SUFFIX}) include_directories(ddi${BRANCH_DIR_SUFFIX})
include_directories(tools/source) include_directories(tools/source)
include_directories(sysman/source)
include_directories(experimental${BRANCH_DIR_SUFFIX}source) include_directories(experimental${BRANCH_DIR_SUFFIX}source)
include_directories(experimental/source/tracing) include_directories(experimental/source/tracing)
@@ -392,6 +393,7 @@ if(BUILD_WITH_L0)
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/experimental${BRANCH_DIR_SUFFIX}source "${NEO_BUILD_DIR}/${LIB_NAME}/experimental${BRANCH_DIR_SUFFIX}source") add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/experimental${BRANCH_DIR_SUFFIX}source "${NEO_BUILD_DIR}/${LIB_NAME}/experimental${BRANCH_DIR_SUFFIX}source")
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/experimental/source/tracing "${NEO_BUILD_DIR}/${LIB_NAME}/experimental/tracing") add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/experimental/source/tracing "${NEO_BUILD_DIR}/${LIB_NAME}/experimental/tracing")
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/tools/source "${NEO_BUILD_DIR}/${LIB_NAME}tools/source") add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/tools/source "${NEO_BUILD_DIR}/${LIB_NAME}tools/source")
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/sysman/source "${NEO_BUILD_DIR}/${LIB_NAME}sysman/source")
append_sources_from_properties(L0_RUNTIME_SOURCES append_sources_from_properties(L0_RUNTIME_SOURCES
L0_API L0_API
@@ -558,12 +560,14 @@ if(BUILD_WITH_L0)
add_subdirectory_unique(core/test/unit_tests) add_subdirectory_unique(core/test/unit_tests)
add_subdirectory_unique(core/test/aub_tests) add_subdirectory_unique(core/test/aub_tests)
add_subdirectory_unique(tools/test/unit_tests) add_subdirectory_unique(tools/test/unit_tests)
add_subdirectory_unique(sysman/test/unit_tests)
else() else()
hide_subdir(core/test/common) hide_subdir(core/test/common)
hide_subdir(core/test/unit_tests) hide_subdir(core/test/unit_tests)
hide_subdir(core/test/aub_tests) hide_subdir(core/test/aub_tests)
hide_subdir(tools/test/unit_tests) hide_subdir(tools/test/unit_tests)
hide_subdir(sysman/test/unit_tests)
hide_subdir(experimental/test/unit_tests) hide_subdir(experimental/test/unit_tests)
endif() endif()
if(NOT NEO_SKIP_L0_BLACK_BOX_TESTS) if(NOT NEO_SKIP_L0_BLACK_BOX_TESTS)

View File

@@ -0,0 +1,19 @@
#
# Copyright (C) 2023 Intel Corporation
#
# SPDX-License-Identifier: MIT
#
set(L0_SRCS_SYSMAN
)
target_sources(${L0_STATIC_LIB_NAME}
PRIVATE
${L0_SRCS_SYSMAN}
${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt
)
add_subdirectories()
# Make our source files visible to parent
set_property(GLOBAL PROPERTY L0_SRCS_SYSMAN ${L0_SRCS_SYSMAN})

View File

@@ -0,0 +1,9 @@
#
# Copyright (C) 2023 Intel Corporation
#
# SPDX-License-Identifier: MIT
#
if(NOT NEO_SKIP_L0_UNIT_TESTS)
add_subdirectory(unit_tests)
endif()

View File

@@ -0,0 +1,101 @@
#
# Copyright (C) 2023 Intel Corporation
#
# SPDX-License-Identifier: MIT
#
link_libraries(${ASAN_LIBS} ${TSAN_LIBS})
set(TARGET_NAME ${TARGET_NAME_L0}_sysman_tests)
include(${NEO_SOURCE_DIR}/cmake/setup_ult_global_flags.cmake)
function(ADD_SUPPORTED_TEST_PRODUCT_FAMILIES_DEFINITION)
set(L0_TESTED_PRODUCT_FAMILIES ${ALL_TESTED_PRODUCT_FAMILY})
string(REPLACE ";" "," L0_TESTED_PRODUCT_FAMILIES "${L0_TESTED_PRODUCT_FAMILIES}")
add_definitions(-DSUPPORTED_TEST_PRODUCT_FAMILIES=${L0_TESTED_PRODUCT_FAMILIES})
endfunction()
ADD_SUPPORTED_TEST_PRODUCT_FAMILIES_DEFINITION()
add_executable(${TARGET_NAME}
${NEO_SOURCE_DIR}/level_zero/core/source/dll/disallow_deferred_deleter.cpp
)
target_sources(${TARGET_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt
${NEO_SOURCE_DIR}/level_zero/core/test/unit_tests/main.cpp
${NEO_SOURCE_DIR}/level_zero/core/test/unit_tests/mock.h
${NEO_SOURCE_DIR}/level_zero/core/test/unit_tests/white_box.h
${NEO_SOURCE_DIR}/level_zero/core/source/dll/create_builtin_functions_lib.cpp
${NEO_SOURCE_DIR}/level_zero/tools/test/unit_tests/sources/debug/debug_session_helper.cpp
${NEO_SHARED_TEST_DIRECTORY}/common/tests_configuration.h
)
target_sources(${TARGET_NAME} PRIVATE
$<TARGET_OBJECTS:${L0_MOCKABLE_LIB_NAME}>
$<TARGET_OBJECTS:neo_libult_common>
$<TARGET_OBJECTS:neo_libult_cs>
$<TARGET_OBJECTS:neo_libult>
$<TARGET_OBJECTS:neo_shared_mocks>
$<TARGET_OBJECTS:neo_unit_tests_config>
)
set_target_properties(${TARGET_NAME} PROPERTIES FOLDER ${TARGET_NAME_L0})
add_subdirectoriesL0(${CMAKE_CURRENT_SOURCE_DIR} "*")
target_compile_definitions(${TARGET_NAME} PRIVATE $<TARGET_PROPERTY:${L0_MOCKABLE_LIB_NAME},INTERFACE_COMPILE_DEFINITIONS>)
target_include_directories(${TARGET_NAME} PRIVATE $<TARGET_PROPERTY:${L0_MOCKABLE_LIB_NAME},INTERFACE_INCLUDE_DIRECTORIES>)
target_include_directories(${TARGET_NAME}
BEFORE
PRIVATE
$<TARGET_PROPERTY:${TARGET_NAME_L0},SOURCE_DIR>/tools
${NEO_SHARED_TEST_DIRECTORY}/common/test_macros/header${BRANCH_DIR_SUFFIX}
${NEO_SHARED_TEST_DIRECTORY}/common/test_configuration/unit_tests
)
if(WIN32)
target_link_libraries(${TARGET_NAME} dbghelp)
endif()
target_link_libraries(${TARGET_NAME}
${NEO_SHARED_MOCKABLE_LIB_NAME}
${HW_LIBS_ULT}
gmock-gtest
${NEO_EXTRA_LIBS}
)
target_sources(${TARGET_NAME} PRIVATE
$<TARGET_OBJECTS:mock_gmm>
$<TARGET_OBJECTS:${TARGET_NAME_L0}_fixtures>
$<TARGET_OBJECTS:${TARGET_NAME_L0}_mocks>
$<TARGET_OBJECTS:${BUILTINS_BINARIES_STATELESS_LIB_NAME}>
$<TARGET_OBJECTS:${BUILTINS_BINARIES_BINDFUL_LIB_NAME}>
$<TARGET_OBJECTS:${BUILTINS_BINARIES_BINDLESS_LIB_NAME}>
)
if(TARGET ${BUILTINS_SPIRV_LIB_NAME})
target_sources(${TARGET_NAME} PRIVATE
$<TARGET_OBJECTS:${BUILTINS_SPIRV_LIB_NAME}>
)
endif()
option(L0_ULT_VERBOSE "Use the default/verbose test output" OFF)
if(NOT L0_ULT_VERBOSE)
set(L0_TESTS_LISTENER_OPTION "--disable_default_listener")
else()
set(L0_TESTS_LISTENER_OPTION "--enable_default_listener")
endif()
if(MSVC)
set_target_properties(${TARGET_NAME}
PROPERTIES
VS_DEBUGGER_COMMAND_ARGUMENTS "${L0_TESTS_FILTER_OPTION} --gtest_catch_exceptions=0 ${L0_TESTS_LISTENER_OPTION}"
VS_DEBUGGER_WORKING_DIRECTORY "$(OutDir)"
)
endif()
add_dependencies(unit_tests ${TARGET_NAME})
create_source_tree(${TARGET_NAME} ${L0_ROOT_DIR}/..)