-
Notifications
You must be signed in to change notification settings - Fork 769
[AsyncAlloc][SYCL][CUDA][Exp] Initial device side implementation for the sycl_ext_oneapi_async_memory_alloc extension #16900
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
f9534ee
to
c0bb96d
Compare
c0bb96d
to
7fa5ae1
Compare
30ed8bb
to
82a106a
Compare
82a106a
to
5f7de35
Compare
5f7de35
to
970fcd1
Compare
970fcd1
to
def5019
Compare
def5019
to
80829c1
Compare
80829c1
to
e82546a
Compare
e82546a
to
ef9cb95
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the changes, this LGTM.
@intel/llvm-gatekeepers I believe this is ready to merge |
Hi @Seanst98 ,
This could be due to difference in CUDA version in pre-commit vs. Nightly. The Ubuntu 22 build job in Nightly uses CUDA 12.1, while Ubuntu 24 build job uses CUDA 12.6.3. |
Thanks for bringing this to my attention, I've pushed a PR which addresses this: #17733 |
This patch fixes a couple static analysis issues with the recent [async alloc patch](#16900): * Use `std::move` for shared pointer in `CGAsyncAlloc` constructor. It is already passed by-value to the constructor so we can just move it when assigning it to the member. * Assert that the queue is available in `AsyncFree` * Catch any exceptions from the memory pool destructor * Initialize AsyncAlloc fields in handler * Add `[[maybe_unused]]` for parameter only used in assert
…the sycl_ext_oneapi_async_memory_alloc extension (#16900) Implement the [sycl_ext_oneapi_async_memory_alloc](#14800) extension for asynchronous memory allocation and freeing in CUDA, for device allocated pools only. SYCL entrypoints which specify host or shared side pools, or pools created by pre-existing allocations will throw. co-authored-by: Sean Stirling <sean.stirling@codeplay.com> co-authored-by: Hugh Delaney <hugh.delaney@codeplay.com> --------- Co-authored-by: Hugh Delaney <hugh.delaney@codeplay.com> Co-authored-by: Nicolas Miller <nicolas.miller@codeplay.com>
Implement the sycl_ext_oneapi_async_memory_alloc extension for asynchronous memory allocation and freeing in CUDA, for device allocated pools only.
SYCL entrypoints which specify host or shared side pools, or pools created by pre-existing allocations will throw.
co-authored-by: Sean Stirling sean.stirling@codeplay.com
co-authored-by: Hugh Delaney hugh.delaney@codeplay.com