Skip to content

[UR][L0v2] Fix urQueueIsGraphCaptureEnabledExp when a fork is created in a graph#21145

Merged
kswiecicki merged 5 commits intointel:syclfrom
reble:matt/ur_is_recording_fix
Feb 2, 2026
Merged

[UR][L0v2] Fix urQueueIsGraphCaptureEnabledExp when a fork is created in a graph#21145
kswiecicki merged 5 commits intointel:syclfrom
reble:matt/ur_is_recording_fix

Conversation

@mmichel11
Copy link
Contributor

urQueueIsGraphCaptureEnabledExp does not function properly as it does not handle command list fork-join. We should fix this by querying the L0 API instead of duplicating the logic throughout UR to track queue state transition.

@mmichel11 mmichel11 marked this pull request as ready for review January 28, 2026 04:22
@mmichel11 mmichel11 requested review from a team as code owners January 28, 2026 04:22
@mmichel11
Copy link
Contributor Author

I don't see the test actually running in pre-commit v2 adapter ci. Here's the results of running it locally on BMG:

$ ./ur-build/test/conformance/exp_graph/exp_graph-test --gtest_filter="*ForkJoinPattern*"
Note: Google Test filter = *ForkJoinPattern*
[==========] Running 2 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 2 tests from urQueueIsGraphCaptureEnabledExpMultiQueueTest
[ RUN      ] urQueueIsGraphCaptureEnabledExpMultiQueueTest.ForkJoinPattern/UR_BACKEND_LEVEL_ZERO__Intel_R__oneAPI_Unified_Runtime_over_Level_Zero_V2__Intel_R__Arc_TM__B580_Graphics_ID0ID______________________default_queue_submission_mode
[       OK ] urQueueIsGraphCaptureEnabledExpMultiQueueTest.ForkJoinPattern/UR_BACKEND_LEVEL_ZERO__Intel_R__oneAPI_Unified_Runtime_over_Level_Zero_V2__Intel_R__Arc_TM__B580_Graphics_ID0ID______________________default_queue_submission_mode (3 ms)
[ RUN      ] urQueueIsGraphCaptureEnabledExpMultiQueueTest.ForkJoinPattern/UR_BACKEND_LEVEL_ZERO__Intel_R__oneAPI_Unified_Runtime_over_Level_Zero_V2__Intel_R__Arc_TM__B580_Graphics_ID0ID______________________UR_QUEUE_FLAG_OUT_OF_ORDER_EXEC_MODE_ENABLE
[       OK ] urQueueIsGraphCaptureEnabledExpMultiQueueTest.ForkJoinPattern/UR_BACKEND_LEVEL_ZERO__Intel_R__oneAPI_Unified_Runtime_over_Level_Zero_V2__Intel_R__Arc_TM__B580_Graphics_ID0ID______________________UR_QUEUE_FLAG_OUT_OF_ORDER_EXEC_MODE_ENABLE (0 ms)
[----------] 2 tests from urQueueIsGraphCaptureEnabledExpMultiQueueTest (4 ms total)

[----------] Global test environment tear-down
[==========] 2 tests from 1 test suite ran. (4 ms total)
[  PASSED  ] 2 tests.

@kswiecicki
Copy link
Contributor

I don't see the test actually running in pre-commit v2 adapter ci. Here's the results of running it locally on BMG:

$ ./ur-build/test/conformance/exp_graph/exp_graph-test --gtest_filter="*ForkJoinPattern*"
Note: Google Test filter = *ForkJoinPattern*
[==========] Running 2 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 2 tests from urQueueIsGraphCaptureEnabledExpMultiQueueTest
[ RUN      ] urQueueIsGraphCaptureEnabledExpMultiQueueTest.ForkJoinPattern/UR_BACKEND_LEVEL_ZERO__Intel_R__oneAPI_Unified_Runtime_over_Level_Zero_V2__Intel_R__Arc_TM__B580_Graphics_ID0ID______________________default_queue_submission_mode
[       OK ] urQueueIsGraphCaptureEnabledExpMultiQueueTest.ForkJoinPattern/UR_BACKEND_LEVEL_ZERO__Intel_R__oneAPI_Unified_Runtime_over_Level_Zero_V2__Intel_R__Arc_TM__B580_Graphics_ID0ID______________________default_queue_submission_mode (3 ms)
[ RUN      ] urQueueIsGraphCaptureEnabledExpMultiQueueTest.ForkJoinPattern/UR_BACKEND_LEVEL_ZERO__Intel_R__oneAPI_Unified_Runtime_over_Level_Zero_V2__Intel_R__Arc_TM__B580_Graphics_ID0ID______________________UR_QUEUE_FLAG_OUT_OF_ORDER_EXEC_MODE_ENABLE
[       OK ] urQueueIsGraphCaptureEnabledExpMultiQueueTest.ForkJoinPattern/UR_BACKEND_LEVEL_ZERO__Intel_R__oneAPI_Unified_Runtime_over_Level_Zero_V2__Intel_R__Arc_TM__B580_Graphics_ID0ID______________________UR_QUEUE_FLAG_OUT_OF_ORDER_EXEC_MODE_ENABLE (0 ms)
[----------] 2 tests from urQueueIsGraphCaptureEnabledExpMultiQueueTest (4 ms total)

[----------] Global test environment tear-down
[==========] 2 tests from 1 test suite ran. (4 ms total)
[  PASSED  ] 2 tests.

Execution logs from single test cases ran as a part of cmake target eg. cmake --build build -j $(nproc) -- check-unified-runtime-adapter are not visible unless they failed.

@kswiecicki
Copy link
Contributor

Hey @mmichel11, could you rebase this PR please, there should be no more CI hang-ups.

@mmichel11
Copy link
Contributor Author

Hey @mmichel11, could you rebase this PR please, there should be no more CI hang-ups.

Done, L0v2 CI is passing. HIP CI shows some timestamp test failure. SYCL failure looks unrelated.

@kswiecicki
Copy link
Contributor

Failures on CI are unrelated to this PR.

@kswiecicki kswiecicki merged commit fc6ef33 into intel:sycl Feb 2, 2026
64 of 68 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants