Skip to content

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

New issue

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

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

Already on GitHub? Sign in 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`.
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.

4 participants