-
Notifications
You must be signed in to change notification settings - Fork 769
[SYCL] Pass handler &
instead of queue across ABI for reduction utils
#18834
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
[SYCL] Pass handler &
instead of queue across ABI for reduction utils
#18834
Conversation
This is based on top of #18830, please ignore first commit during review. Also, while @intel/sycl-graphs-reviewers aren't technically owners of the reduction-related changes, it mostly affects the graph-related code path, so their review is still welcome. |
86d2491
to
442a4c2
Compare
442a4c2
to
6f81b65
Compare
Queue might be `nullptr` in case of graph, but the information this utils query is device-specific. By passing entire `handler &` and having access to graph information we'd be able to return more precise results. Another positive side-effect is that we eliminiate explicit `std::shared_ptr<queue_impl>` which is a small step forward in the ongoing refactoring efforts to prefer passing `*_impl` by raw ptr/ref with explicit `shared_from_this` whenever lifetimes need to be extended.
6f81b65
to
a580702
Compare
Rebased, not relevant anymore. @intel/sycl-graphs-reviewers review request still stands :) @slawekptak, this is ready for review. |
Initially started in intel#18830 Subsequent PRs before this final one: intel#18794 intel#18834
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.
I think this is fine since graphs at the moment don't support reductions: https://github.com/intel/llvm/blob/sycl/sycl/doc/extensions/experimental/sycl_ext_oneapi_graph.asciidoc#12-non-implemented-features-and-known-issues
Initially started in intel#18830 Subsequent PRs before this final one: intel#18794 intel#18834
Initially started in intel#18830 Subsequent PRs before this final one: intel#18794 intel#18834 intel#18748
Initially started in intel#18830 Subsequent PRs before this final one: intel#18794 intel#18834 intel#18748
Initially started in intel#18830 Subsequent PRs before this final one: intel#18794 intel#18834 intel#18748
Initially started in intel#18830 Subsequent PRs before this final one: intel#18794 intel#18834 intel#18748
Queue might be
nullptr
in case of graph, but the information theseutilitiess query is device-specific. By passing entire
handler &
and havingaccess to graph information we'd be able to return more precise results.
Another positive side-effect is that we eliminiate explicit
std::shared_ptr<queue_impl>
which is a small step forward in theongoing refactoring efforts to prefer passing
*_impl
by raw ptr/refwith explicit
shared_from_this
whenever lifetimes need to be extended.