Skip to content

[UR][L0] Fix pool iteration during freelist cleanup #18406

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 1 commit into from
May 14, 2025

Conversation

kswiecicki
Copy link
Contributor

The forEachPool method stops iterating if the callback function returns false. As a result, during EnqueuedPools cleanup, pools later in the chain could be skipped if ealier pools didn't require cleanup.

Additionally, ensure that user-created pools associated with the given queue handle are properly cleaned up during urQueueFinish and urQueueRelease calls.

@kswiecicki kswiecicki requested review from a team as code owners May 12, 2025 08:37
@kswiecicki
Copy link
Contributor Author

CI fails seem to be unrelated to the current PR as they are also present eg. here: https://github.com/intel/llvm/actions/runs/14971061195/job/42054753563.

run_prebuilt_e2e_tests (Intel Arc A-Series Graphics...:

...
********************
Failed Tests (4):
  SYCL :: KernelAndProgram/cache_env_vars.cpp
  SYCL :: KernelAndProgram/cache_env_vars_lin.cpp
  SYCL :: KernelCompiler/opencl.cpp
  SYCL :: KernelCompiler/sycl_cache_pm.cpp

The forEachPool method stops iterating if the callback function returns
false. As a result, during EnqueuedPools cleanup, pools later in the
chain could be skipped if ealier pools didn't require cleanup.

Additionally, ensure that user-created pools associated with the given
queue handle are properly cleaned up during urQueueFinish and urQueueRelease
calls.
@kswiecicki
Copy link
Contributor Author

@intel/llvm-gatekeepers, someone merge this please. CI job fails seem to be unrelated to this PR.

@martygrant
Copy link
Contributor

@kswiecicki please check the issues list a tracker for failing tests and comment with a link to the issue when requesting a merge, even if they are unrelated to your changes, thanks! The tracker for these tests is #18416

@martygrant martygrant merged commit da101ee into intel:sycl May 14, 2025
43 of 45 checks passed
kbenzie pushed a commit that referenced this pull request Jun 6, 2025
…up (#18802)

This PR mirrors fixes implemented in
#18406 to adapter L0 v1.
To cleanup async pools properly, USM pool handles must be tracked. This
feature enables `UR_USM_ALLOC_INFO_POOL` prop to be implemented in
`urUSMGetMemAllocInfo`.
github-actions bot pushed a commit to oneapi-src/unified-runtime that referenced this pull request Jun 7, 2025
This PR mirrors fixes implemented in
intel/llvm#18406 to adapter L0 v1.
To cleanup async pools properly, USM pool handles must be tracked. This
feature enables `UR_USM_ALLOC_INFO_POOL` prop to be implemented in
`urUSMGetMemAllocInfo`.
kbenzie pushed a commit to oneapi-src/unified-runtime that referenced this pull request Jun 9, 2025
This PR mirrors fixes implemented in
intel/llvm#18406 to adapter L0 v1.
To cleanup async pools properly, USM pool handles must be tracked. This
feature enables `UR_USM_ALLOC_INFO_POOL` prop to be implemented in
`urUSMGetMemAllocInfo`.
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants