mirror of
https://github.com/intel/compute-runtime.git
synced 2025-09-15 13:01:45 +08:00
Define run_*_unit_tests targets in separated folders
Change-Id: Ic01913cf58e373f59a3c9445c385741dd6308d59 Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:

committed by
sys_ocldev

parent
4cc22d281d
commit
073e015000
@ -6,8 +6,9 @@
|
||||
|
||||
project(igdrcl_tests)
|
||||
|
||||
set(TEST_PROJECTS_FOLDER "opencl runtime")
|
||||
set(PLATFORM_SPECIFIC_TARGETS_FOLDER "${TEST_PROJECTS_FOLDER}/test platforms")
|
||||
set(OPENCL_TEST_PROJECTS_FOLDER "opencl runtime")
|
||||
set(OPENCL_PLATFORM_SPECIFIC_TEST_TARGETS_FOLDER "${OPENCL_TEST_PROJECTS_FOLDER}/test platforms")
|
||||
set(OPENCL_UNIT_TEST_DIR ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
# disable optimizations for ults
|
||||
if(UNIX)
|
||||
@ -180,7 +181,7 @@ function(neo_copy_test_files target product)
|
||||
DEPENDS ${NEO_SOURCE_DIR}/opencl/test/unit_test/test_files
|
||||
)
|
||||
add_dependencies(${target} copy_compiler_files)
|
||||
set_target_properties(${target} PROPERTIES FOLDER "${PLATFORM_SPECIFIC_TARGETS_FOLDER}/${product}")
|
||||
set_target_properties(${target} PROPERTIES FOLDER "${OPENCL_PLATFORM_SPECIFIC_TEST_TARGETS_FOLDER}/${product}")
|
||||
endfunction()
|
||||
|
||||
add_dependencies(unit_tests
|
||||
@ -189,15 +190,15 @@ add_dependencies(unit_tests
|
||||
prepare_test_kernels
|
||||
)
|
||||
|
||||
set_target_properties(igdrcl_tests PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(igdrcl_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
set_property(TARGET igdrcl_tests APPEND_STRING PROPERTY COMPILE_FLAGS ${ASAN_FLAGS})
|
||||
if(UNIX)
|
||||
set_property(TARGET igdrcl_tests APPEND_STRING PROPERTY COMPILE_FLAGS " -g")
|
||||
endif()
|
||||
|
||||
set_target_properties(unit_tests PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(prepare_test_kernels PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(run_unit_tests PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(unit_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(prepare_test_kernels PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(run_unit_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
|
||||
target_include_directories(igdrcl_tests BEFORE PRIVATE ${NEO_CORE_TEST_DIRECTORY}/unit_test/test_macros${BRANCH_DIR_SUFFIX})
|
||||
|
||||
@ -418,48 +419,6 @@ list(REMOVE_ITEM TEST_KERNELS "${CMAKE_CURRENT_SOURCE_DIR}/test_files/stateless_
|
||||
list(REMOVE_ITEM TEST_KERNELS ${TEST_KERNEL_VME}
|
||||
)
|
||||
|
||||
function(gen_run_tests_with_appverifier product slices subslices eu_per_ss)
|
||||
if(${CMAKE_BUILD_TYPE} STREQUAL "Debug" AND "${IGDRCL_OPTION__BITS}" STREQUAL "64" AND APPVERIFIER_ALLOWED)
|
||||
add_custom_command(
|
||||
TARGET run_${product}_unit_tests
|
||||
POST_BUILD
|
||||
COMMAND echo copying test verify.bat file from ${CMAKE_CURRENT_SOURCE_DIR} to ${TargetDir}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${SRC} ${DST} ${CMAKE_CURRENT_SOURCE_DIR}/verify.bat ${TargetDir}/verify.bat
|
||||
COMMAND WORKING_DIRECTORY ${TargetDir}
|
||||
COMMAND echo Running igdrcl_tests with App Verifier
|
||||
COMMAND ${TargetDir}/verify.bat --product ${product} --slices ${slices} --subslices ${subslices} --eu_per_ss ${eu_per_ss} ${GTEST_EXCEPTION_OPTIONS} ${IGDRCL_TESTS_LISTENER_OPTION} ${GTEST_FILTER_OPTION}
|
||||
COMMAND echo App Verifier returned: %errorLevel%
|
||||
)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(gen_run_unit_tests product slices subslices eu_per_ss)
|
||||
add_custom_target(run_${product}_unit_tests ALL DEPENDS unit_tests)
|
||||
neo_copy_test_files(copy_test_files_${product} ${product})
|
||||
add_dependencies(unit_tests copy_test_files_${product})
|
||||
set_target_properties(run_${product}_unit_tests PROPERTIES FOLDER "${PLATFORM_SPECIFIC_TARGETS_FOLDER}/${product}")
|
||||
add_custom_command(
|
||||
TARGET run_${product}_unit_tests
|
||||
POST_BUILD
|
||||
COMMAND WORKING_DIRECTORY ${TargetDir}
|
||||
COMMAND echo Running igdrcl_tests ${target} ${slices}x${subslices}x${eu_per_ss} in ${TargetDir}/${product}
|
||||
COMMAND ${CMAKE_COMMAND} -E env GTEST_OUTPUT=xml:${GTEST_XML_OUTPUT_DIR}/test_details_${product}_${slices}_${subslices}_${eu_per_ss}.xml $<TARGET_FILE:igdrcl_tests> --product ${product} --slices ${slices} --subslices ${subslices} --eu_per_ss ${eu_per_ss} ${GTEST_EXCEPTION_OPTIONS} --gtest_repeat=${GTEST_REPEAT} ${GTEST_SHUFFLE} ${IGDRCL_TESTS_LISTENER_OPTION} ${GTEST_FILTER_OPTION}
|
||||
)
|
||||
add_dependencies(run_unit_tests run_${product}_unit_tests)
|
||||
endfunction()
|
||||
|
||||
macro(macro_for_each_test_config)
|
||||
gen_run_unit_tests(${PLATFORM_IT_LOWER} ${SLICES} ${SUBSLICES} ${EU_PER_SS})
|
||||
if(MSVC AND ${TESTED_WITH_APPVERIFIER})
|
||||
gen_run_tests_with_appverifier(${PLATFORM_IT_LOWER} ${SLICES} ${SUBSLICES} ${EU_PER_SS})
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
macro(macro_for_each_platform)
|
||||
PLATFORM_TESTED_WITH_APPVERIFIER(${GEN_TYPE} ${PLATFORM_IT} TESTED_WITH_APPVERIFIER)
|
||||
apply_macro_for_each_test_config("UNIT_TESTS")
|
||||
endmacro()
|
||||
|
||||
macro(macro_for_each_gen)
|
||||
foreach(PLATFORM_TYPE ${PLATFORM_TYPES})
|
||||
if(${GEN_TYPE}_HAS_${PLATFORM_TYPE})
|
||||
@ -511,11 +470,10 @@ macro(macro_for_each_gen)
|
||||
endif()
|
||||
endif()
|
||||
add_custom_target(prepare_test_kernels_${family_name_with_type} DEPENDS ${kernels_to_compile_${family_name_with_type}} copy_compiler_files)
|
||||
set_target_properties(prepare_test_kernels_${family_name_with_type} PROPERTIES FOLDER "${PLATFORM_SPECIFIC_TARGETS_FOLDER}/${family_name_with_type}")
|
||||
set_target_properties(prepare_test_kernels_${family_name_with_type} PROPERTIES FOLDER "${OPENCL_PLATFORM_SPECIFIC_TEST_TARGETS_FOLDER}/${family_name_with_type}")
|
||||
add_dependencies(prepare_test_kernels prepare_test_kernels_${family_name_with_type})
|
||||
endif()
|
||||
endforeach()
|
||||
apply_macro_for_each_platform()
|
||||
endmacro()
|
||||
apply_macro_for_each_gen("TESTED")
|
||||
add_subdirectories()
|
||||
|
@ -27,7 +27,7 @@ add_executable(igdrcl_aub_tests
|
||||
${IGDRCL_AUB_TESTS__TARGET_OBJECTS}
|
||||
)
|
||||
|
||||
set_target_properties(igdrcl_aub_tests PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(igdrcl_aub_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
|
||||
if(WIN32)
|
||||
set_target_properties(igdrcl_aub_tests PROPERTIES
|
||||
@ -36,7 +36,7 @@ if(WIN32)
|
||||
endif()
|
||||
|
||||
add_custom_target(run_aub_tests)
|
||||
set_target_properties(run_aub_tests PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(run_aub_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
|
||||
if(WIN32)
|
||||
target_include_directories(igdrcl_aub_tests PRIVATE
|
||||
@ -96,8 +96,8 @@ macro(macro_for_each_test_config)
|
||||
endforeach()
|
||||
add_custom_target(run_${PLATFORM_IT_LOWER}_aub_tests ALL DEPENDS ${PLATFORM_IT_LOWER}_aub_tests)
|
||||
add_dependencies(run_aub_tests run_${PLATFORM_IT_LOWER}_aub_tests)
|
||||
set_target_properties(${PLATFORM_IT_LOWER}_aub_tests PROPERTIES FOLDER "${PLATFORM_SPECIFIC_TARGETS_FOLDER}/${PLATFORM_IT_LOWER}")
|
||||
set_target_properties(run_${PLATFORM_IT_LOWER}_aub_tests PROPERTIES FOLDER "${PLATFORM_SPECIFIC_TARGETS_FOLDER}/${PLATFORM_IT_LOWER}")
|
||||
set_target_properties(${PLATFORM_IT_LOWER}_aub_tests PROPERTIES FOLDER "${OPENCL_PLATFORM_SPECIFIC_TEST_TARGETS_FOLDER}/${PLATFORM_IT_LOWER}")
|
||||
set_target_properties(run_${PLATFORM_IT_LOWER}_aub_tests PROPERTIES FOLDER "${OPENCL_PLATFORM_SPECIFIC_TEST_TARGETS_FOLDER}/${PLATFORM_IT_LOWER}")
|
||||
add_custom_command(
|
||||
TARGET ${PLATFORM_IT_LOWER}_aub_tests
|
||||
POST_BUILD
|
||||
|
37
opencl/test/unit_test/cmake/run_ult_target.cmake
Normal file
37
opencl/test/unit_test/cmake/run_ult_target.cmake
Normal file
@ -0,0 +1,37 @@
|
||||
#
|
||||
# Copyright (C) 2020 Intel Corporation
|
||||
#
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
string(REPLACE "/" ";" unit_test_config ${unit_test_config})
|
||||
list(GET unit_test_config 0 product)
|
||||
list(GET unit_test_config 1 slices)
|
||||
list(GET unit_test_config 2 subslices)
|
||||
list(GET unit_test_config 3 eu_per_ss)
|
||||
add_custom_target(run_${product}_unit_tests)
|
||||
add_dependencies(run_${product}_unit_tests unit_tests)
|
||||
neo_copy_test_files(copy_test_files_${product} ${product})
|
||||
add_dependencies(unit_tests copy_test_files_${product})
|
||||
set_target_properties(run_${product}_unit_tests PROPERTIES FOLDER "${OPENCL_PLATFORM_SPECIFIC_TEST_TARGETS_FOLDER}/${product}")
|
||||
add_custom_command(
|
||||
TARGET run_${product}_unit_tests
|
||||
POST_BUILD
|
||||
COMMAND WORKING_DIRECTORY ${TargetDir}
|
||||
COMMAND echo Running igdrcl_tests ${target} ${slices}x${subslices}x${eu_per_ss} in ${TargetDir}/${product}
|
||||
COMMAND $<TARGET_FILE:igdrcl_tests> --product ${product} --slices ${slices} --subslices ${subslices} --eu_per_ss ${eu_per_ss} ${GTEST_EXCEPTION_OPTIONS} --gtest_repeat=${GTEST_REPEAT} ${GTEST_SHUFFLE} ${IGDRCL_TESTS_LISTENER_OPTION} ${GTEST_FILTER_OPTION}
|
||||
)
|
||||
add_dependencies(run_unit_tests run_${product}_unit_tests)
|
||||
|
||||
if(${CMAKE_BUILD_TYPE} STREQUAL "Debug" AND "${IGDRCL_OPTION__BITS}" STREQUAL "64" AND DEFINED appverified_allowed)
|
||||
add_custom_command(
|
||||
TARGET run_${product}_unit_tests
|
||||
POST_BUILD
|
||||
COMMAND echo copying test verify.bat file from ${OPENCL_UNIT_TEST_DIR} to ${TargetDir}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${OPENCL_UNIT_TEST_DIR}/verify.bat ${TargetDir}/verify.bat
|
||||
COMMAND WORKING_DIRECTORY ${TargetDir}
|
||||
COMMAND echo Running igdrcl_tests with App Verifier
|
||||
COMMAND ${TargetDir}/verify.bat --product ${product} --slices ${slices} --subslices ${subslices} --eu_per_ss ${eu_per_ss} ${GTEST_EXCEPTION_OPTIONS} ${IGDRCL_TESTS_LISTENER_OPTION} ${GTEST_FILTER_OPTION}
|
||||
COMMAND echo App Verifier returned: %errorLevel%
|
||||
)
|
||||
endif()
|
@ -12,4 +12,6 @@ if(TESTS_EHL)
|
||||
)
|
||||
target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen11_ehl})
|
||||
add_subdirectories()
|
||||
set(unit_test_config "ehl/1/4/8")
|
||||
include(${OPENCL_UNIT_TEST_DIR}/cmake/run_ult_target.cmake)
|
||||
endif()
|
||||
|
@ -14,4 +14,7 @@ if(TESTS_ICLLP)
|
||||
)
|
||||
target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen11_icllp})
|
||||
add_subdirectories()
|
||||
set(appverified_allowed TRUE)
|
||||
set(unit_test_config "icllp/1/8/8")
|
||||
include(${OPENCL_UNIT_TEST_DIR}/cmake/run_ult_target.cmake)
|
||||
endif()
|
||||
|
@ -12,4 +12,6 @@ if(TESTS_LKF)
|
||||
)
|
||||
target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen11_lkf})
|
||||
add_subdirectories()
|
||||
set(unit_test_config "lkf/1/8/8")
|
||||
include(${OPENCL_UNIT_TEST_DIR}/cmake/run_ult_target.cmake)
|
||||
endif()
|
||||
|
@ -13,4 +13,7 @@ if(TESTS_TGLLP)
|
||||
)
|
||||
target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen12lp_tgllp})
|
||||
add_subdirectories()
|
||||
set(appverified_allowed TRUE)
|
||||
set(unit_test_config "tgllp/1/6/16")
|
||||
include(${OPENCL_UNIT_TEST_DIR}/cmake/run_ult_target.cmake)
|
||||
endif()
|
||||
|
@ -13,4 +13,7 @@ if(TESTS_BDW)
|
||||
)
|
||||
target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen8_bdw})
|
||||
add_subdirectories()
|
||||
set(appverified_allowed TRUE)
|
||||
set(unit_test_config "bdw/1/3/8")
|
||||
include(${OPENCL_UNIT_TEST_DIR}/cmake/run_ult_target.cmake)
|
||||
endif()
|
||||
|
@ -13,4 +13,6 @@ if(TESTS_BXT)
|
||||
)
|
||||
target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen9_bxt})
|
||||
add_subdirectories()
|
||||
set(unit_test_config "bxt/1/3/6")
|
||||
include(${OPENCL_UNIT_TEST_DIR}/cmake/run_ult_target.cmake)
|
||||
endif()
|
||||
|
@ -12,4 +12,6 @@ if(TESTS_CFL)
|
||||
)
|
||||
target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen9_cfl})
|
||||
add_subdirectories()
|
||||
set(unit_test_config "cfl/1/3/6")
|
||||
include(${OPENCL_UNIT_TEST_DIR}/cmake/run_ult_target.cmake)
|
||||
endif()
|
||||
|
@ -12,4 +12,6 @@ if(TESTS_GLK)
|
||||
)
|
||||
target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen9_glk})
|
||||
add_subdirectories()
|
||||
set(unit_test_config "glk/1/3/6")
|
||||
include(${OPENCL_UNIT_TEST_DIR}/cmake/run_ult_target.cmake)
|
||||
endif()
|
||||
|
@ -12,4 +12,6 @@ if(TESTS_KBL)
|
||||
)
|
||||
target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen9_kbl})
|
||||
add_subdirectories()
|
||||
set(unit_test_config "kbl/1/3/6")
|
||||
include(${OPENCL_UNIT_TEST_DIR}/cmake/run_ult_target.cmake)
|
||||
endif()
|
||||
|
@ -18,4 +18,7 @@ if(TESTS_SKL)
|
||||
|
||||
target_sources(igdrcl_tests PRIVATE ${IGDRCL_SRCS_tests_gen9_skl})
|
||||
add_subdirectories()
|
||||
set(appverified_allowed TRUE)
|
||||
set(unit_test_config "skl/1/3/8")
|
||||
include(${OPENCL_UNIT_TEST_DIR}/cmake/run_ult_target.cmake)
|
||||
endif()
|
||||
|
@ -138,7 +138,7 @@ set_property(GLOBAL PROPERTY IGDRCL_SRCS_LIB_ULT_ENV_LINUX ${IGDRCL_SRCS_LIB_ULT
|
||||
|
||||
foreach(target_name igdrcl_libult igdrcl_libult_cs igdrcl_libult_env)
|
||||
set_target_properties(${target_name} PROPERTIES POSITION_INDEPENDENT_CODE ON)
|
||||
set_target_properties(${target_name} PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(${target_name} PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
set_property(TARGET ${target_name} APPEND_STRING PROPERTY COMPILE_FLAGS ${ASAN_FLAGS} ${TSAN_FLAGS})
|
||||
target_include_directories(${target_name} PRIVATE $<TARGET_PROPERTY:${NEO_MOCKABLE_LIB_NAME},INTERFACE_INCLUDE_DIRECTORIES>)
|
||||
target_compile_definitions(${target_name} PRIVATE $<TARGET_PROPERTY:${NEO_MOCKABLE_LIB_NAME},INTERFACE_COMPILE_DEFINITIONS>)
|
||||
|
@ -54,13 +54,13 @@ add_dependencies(igdrcl_mt_tests test_dynamic_lib)
|
||||
|
||||
create_project_source_tree(igdrcl_mt_tests ${NEO_SOURCE_DIR}/runtime ${NEO_SOURCE_DIR}/unit_tests)
|
||||
|
||||
set_target_properties(igdrcl_mt_tests PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(igdrcl_mt_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
set_property(TARGET igdrcl_mt_tests APPEND_STRING PROPERTY COMPILE_FLAGS ${TSAN_FLAGS})
|
||||
if(NOT WIN32)
|
||||
set_property(TARGET igdrcl_mt_tests APPEND_STRING PROPERTY COMPILE_FLAGS " -g")
|
||||
endif()
|
||||
|
||||
set_target_properties(run_mt_unit_tests PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(run_mt_unit_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
|
||||
function(run_mt_tests target slices subslices eu_per_ss)
|
||||
add_custom_target(run_${target}_mt_unit_tests DEPENDS igdrcl_mt_tests)
|
||||
@ -68,7 +68,7 @@ function(run_mt_tests target slices subslices eu_per_ss)
|
||||
add_dependencies(run_${target}_mt_unit_tests copy_test_files_${target})
|
||||
endif()
|
||||
add_dependencies(run_mt_unit_tests run_${target}_mt_unit_tests)
|
||||
set_target_properties(run_${target}_mt_unit_tests PROPERTIES FOLDER "${PLATFORM_SPECIFIC_TARGETS_FOLDER}/${target}")
|
||||
set_target_properties(run_${target}_mt_unit_tests PROPERTIES FOLDER "${OPENCL_PLATFORM_SPECIFIC_TEST_TARGETS_FOLDER}/${target}")
|
||||
|
||||
add_custom_command(
|
||||
TARGET run_${target}_mt_unit_tests
|
||||
|
@ -54,5 +54,5 @@ add_custom_command(
|
||||
)
|
||||
add_dependencies(run_unit_tests run_page_fault_manager_tests)
|
||||
|
||||
set_target_properties(neo_page_fault_manager_tests PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(run_page_fault_manager_tests PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(neo_page_fault_manager_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(run_page_fault_manager_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
|
@ -48,6 +48,6 @@ add_custom_command(
|
||||
)
|
||||
add_dependencies(run_unit_tests run_windows_dll_tests)
|
||||
|
||||
set_target_properties(igdrcl_windows_dll_tests PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(run_windows_dll_tests PROPERTIES FOLDER ${TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(igdrcl_windows_dll_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
set_target_properties(run_windows_dll_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER})
|
||||
endif()
|
||||
|
Reference in New Issue
Block a user