-
Notifications
You must be signed in to change notification settings - Fork 790
[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
Conversation
a00302f
to
03fbdf3
Compare
03fbdf3
to
fc3b83a
Compare
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.
|
fc3b83a
to
6b5e4fc
Compare
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.
@intel/llvm-gatekeepers, someone merge this please. CI job fails seem to be unrelated to this PR. |
@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 |
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`.
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`.
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.