diff --git a/core/libs/prx/libSceAgcDriver/CMakeLists.txt b/core/libs/prx/libSceAgcDriver/CMakeLists.txt index 966bcaae5d..1fa936a596 100644 --- a/core/libs/prx/libSceAgcDriver/CMakeLists.txt +++ b/core/libs/prx/libSceAgcDriver/CMakeLists.txt @@ -3756,9 +3756,10 @@ if(BUILD_TESTING AND ANYPS5_ENABLE_SPIRV_TOOLS) add_dependencies(agc_compute_pipeline_replay_tests agc_compute_pipeline_replay agc_driver_branch_past_endpgm_tests) add_test(NAME agc_compute_pipeline_inspection COMMAND ${CMAKE_COMMAND} -DREPLAY=$ + -DVULKAN_PROBE=$ -DOUTPUT_ROOT=${CMAKE_CURRENT_BINARY_DIR}/capture-tests -P ${CMAKE_CURRENT_SOURCE_DIR}/tests/ComputePipelineInspectRun.cmake) - set_tests_properties(agc_compute_pipeline_inspection PROPERTIES TIMEOUT 60 SKIP_REGULAR_EXPRESSION "compute pipeline inspection: skipped unsupported executable statistics") + set_tests_properties(agc_compute_pipeline_inspection PROPERTIES TIMEOUT 60 SKIP_REGULAR_EXPRESSION "compute pipeline inspection: skipped") add_test(NAME agc_compute_pipeline_capture_run COMMAND ${CMAKE_COMMAND} -DFIXTURE=$ -DREPLAY=$ diff --git a/core/libs/prx/libSceAgcDriver/tests/ComputePipelineInspectRun.cmake b/core/libs/prx/libSceAgcDriver/tests/ComputePipelineInspectRun.cmake index a8887b9939..29396980ae 100644 --- a/core/libs/prx/libSceAgcDriver/tests/ComputePipelineInspectRun.cmake +++ b/core/libs/prx/libSceAgcDriver/tests/ComputePipelineInspectRun.cmake @@ -4,6 +4,18 @@ endif() string(RANDOM LENGTH 12 ALPHABET 0123456789abcdef runId) set(runDirectory "${OUTPUT_ROOT}/compute-inspect-${runId}") file(MAKE_DIRECTORY "${runDirectory}") +if(NOT DEFINED ENV{ANYPS5_REQUIRE_VULKAN} AND DEFINED VULKAN_PROBE) + execute_process( + COMMAND "${CMAKE_COMMAND}" -E env "APS5_PIPELINE_STATS=0" "${VULKAN_PROBE}" + WORKING_DIRECTORY "${runDirectory}" + RESULT_VARIABLE probeResult OUTPUT_VARIABLE probeOutput ERROR_VARIABLE probeError TIMEOUT 20 + ) + file(WRITE "${runDirectory}/vulkan-probe.log" "${probeOutput}\n${probeError}") + if(probeResult STREQUAL "77") + message(STATUS "compute pipeline inspection: skipped, no usable Vulkan device") + return() + endif() +endif() set(report "${runDirectory}/inspection.json") execute_process( COMMAND "${CMAKE_COMMAND}" -E env "APS5_PIPELINE_STATS=1" "${REPLAY}" --fixture --inspect --output "${report}"