1# 2# Copyright (C) 2020-2021 Intel Corporation 3# 4# SPDX-License-Identifier: MIT 5# 6 7string(REPLACE "/" ";" aub_test_config ${aub_test_config}) 8list(GET aub_test_config 0 product) 9list(GET aub_test_config 1 slices) 10list(GET aub_test_config 2 subslices) 11list(GET aub_test_config 3 eu_per_ss) 12list(GET aub_test_config 4 revision_id) 13 14add_custom_target(run_${product}_${revision_id}_aub_tests ALL) 15 16if(NOT NEO_SKIP_OCL_UNIT_TESTS OR NOT NEO_SKIP_L0_UNIT_TESTS) 17 18 if(NOT NEO_SKIP_OCL_UNIT_TESTS) 19 add_dependencies(run_${product}_${revision_id}_aub_tests copy_test_files_per_product) 20 add_dependencies(run_${product}_${revision_id}_aub_tests prepare_test_kernels_for_ocl) 21 add_dependencies(run_${product}_${revision_id}_aub_tests prepare_test_kernels_for_shared) 22 endif() 23 24 add_dependencies(run_aub_tests run_${product}_${revision_id}_aub_tests) 25 set_target_properties(run_${product}_${revision_id}_aub_tests PROPERTIES FOLDER "${AUB_TESTS_TARGETS_FOLDER}/${product}/${revision_id}") 26 27 if(WIN32) 28 add_dependencies(run_${product}_${revision_id}_aub_tests mock_gdi) 29 endif() 30 31 set(aub_tests_options "") 32 if(NOT ${AUB_DUMP_BUFFER_FORMAT} STREQUAL "") 33 list(APPEND aub_tests_options --dump_buffer_format) 34 list(APPEND aub_tests_options ${AUB_DUMP_BUFFER_FORMAT}) 35 endif() 36 if(NOT ${AUB_DUMP_IMAGE_FORMAT} STREQUAL "") 37 list(APPEND aub_tests_options --dump_image_format) 38 list(APPEND aub_tests_options ${AUB_DUMP_IMAGE_FORMAT}) 39 endif() 40 41 add_custom_command( 42 TARGET run_${product}_${revision_id}_aub_tests 43 POST_BUILD 44 COMMAND WORKING_DIRECTORY ${TargetDir} 45 COMMAND echo re-creating working directory for ${product}/${revision_id} AUBs generation... 46 COMMAND ${CMAKE_COMMAND} -E remove_directory ${TargetDir}/${product}_aub/${revision_id} 47 COMMAND ${CMAKE_COMMAND} -E make_directory ${TargetDir}/${product}_aub/${revision_id} 48 COMMAND ${CMAKE_COMMAND} -E make_directory ${TargetDir}/${product}_aub/${revision_id}/aub_out 49 COMMAND ${CMAKE_COMMAND} -E make_directory ${TargetDir}/${product}_aub/${revision_id}/cl_cache 50 ) 51 52endif() 53 54if(NOT NEO_SKIP_OCL_UNIT_TESTS) 55 if(WIN32 OR NOT DEFINED NEO__GMM_LIBRARY_PATH) 56 set(aub_test_cmd_prefix $<TARGET_FILE:igdrcl_aub_tests>) 57 else() 58 set(aub_test_cmd_prefix LD_LIBRARY_PATH=${NEO__GMM_LIBRARY_PATH} IGDRCL_TEST_SELF_EXEC=off ${NEO_RUN_INTERCEPTOR_LIST} $<TARGET_FILE:igdrcl_aub_tests>) 59 endif() 60 61 add_custom_command( 62 TARGET run_${product}_${revision_id}_aub_tests 63 POST_BUILD 64 COMMAND WORKING_DIRECTORY ${TargetDir} 65 COMMAND echo Running AUB generation for ${product} in ${TargetDir}/${product}_aub 66 COMMAND ${aub_test_cmd_prefix} --product ${product} --slices ${slices} --subslices ${subslices} --eu_per_ss ${eu_per_ss} --gtest_repeat=1 ${aub_tests_options} ${NEO_TESTS_LISTENER_OPTION} --rev_id ${revision_id} 67 ) 68endif() 69 70if(NOT NEO_SKIP_L0_UNIT_TESTS AND BUILD_WITH_L0) 71 add_dependencies(run_${product}_${revision_id}_aub_tests prepare_test_kernels_for_l0) 72 73 if(WIN32 OR NOT DEFINED NEO__GMM_LIBRARY_PATH) 74 set(l0_aub_test_cmd_prefix $<TARGET_FILE:ze_intel_gpu_aub_tests>) 75 else() 76 set(l0_aub_test_cmd_prefix LD_LIBRARY_PATH=${NEO__GMM_LIBRARY_PATH} ${NEO_RUN_INTERCEPTOR_LIST} $<TARGET_FILE:ze_intel_gpu_aub_tests>) 77 endif() 78 79 add_custom_command( 80 TARGET run_${product}_${revision_id}_aub_tests 81 POST_BUILD 82 COMMAND WORKING_DIRECTORY ${TargetDir} 83 COMMAND echo Running Level Zero AUB generation for ${product} in ${TargetDir}/${product}_aub 84 COMMAND ${l0_aub_test_cmd_prefix} --product ${product} --slices ${slices} --subslices ${subslices} --eu_per_ss ${eu_per_ss} --gtest_repeat=1 ${aub_tests_options} --rev_id ${revision_id} 85 ) 86endif() 87 88if(DO_NOT_RUN_AUB_TESTS) 89 set_target_properties(run_${product}_${revision_id}_aub_tests PROPERTIES 90 EXCLUDE_FROM_DEFAULT_BUILD TRUE 91 EXCLUDE_FROM_ALL TRUE 92 ) 93endif() 94