Skip to content

Conversation

@slawekptak
Copy link
Contributor

@slawekptak slawekptak commented Oct 24, 2025

The kernel submission APIs with event dependencies are switched to use the handler-less kernel submission path.

Copy link
Contributor

@vinser52 vinser52 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but address the suggestion I left with #pragma once

@slawekptak
Copy link
Contributor Author

@mmichel11 @intel/sycl-graphs-reviewers @uditagarwal97 @sergey-semenov @aelovikov-intel Could you please take a look?

KernelType, sycl::nd_item<1>>::value)) {
detail::submit_kernel_direct_parallel_for(q, nd_range<1>(r, size),
std::forward<KernelType>(k));
std::forward<KernelType>(k), {});
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if we should set a default value for DepEvents in submit_kernel_direct_parallel_for and submit_kernel_direct_single_task, so that we can avoid passing {} everywhere.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That doesn't matter. Once handler-less path "implementation" finishes, next step would be to clean up the codebase and that would include dropping it completely and re-writing handler path to delegate to the public handler-less APIs to avoid extra level of templates.

Copy link
Contributor

@mmichel11 mmichel11 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Graph changes LGTM

/// be nullptr if no associated graph.
/// \param CommandGroupType Type of command group.
template <bool LockQueue = true>
void registerEventDependency(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of creating a new header, is it possible to put this function in some existing header, like event_impl.hpp?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, this made sense to me too, but unfortunately there is a circular dependency between the event_impl.hpp and queue_impl.hpp..

Copy link
Contributor

@uditagarwal97 uditagarwal97 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM overall. I don't see any test associated with this change, does any existing test(s) cover them?

Copy link
Contributor

@sergey-semenov sergey-semenov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, no blocking comments, just some non-functional nitpicks.

@github-actions
Copy link
Contributor

github-actions bot commented Nov 4, 2025

@intel/llvm-gatekeepers please consider merging

@slawekptak
Copy link
Contributor Author

LGTM overall. I don't see any test associated with this change, does any existing test(s) cover them?

I've added a test for the API function, which was not covered, but the rest of the functions affected by this PR should be covered by existing tests.

@uditagarwal97 uditagarwal97 merged commit 0f39e01 into intel:sycl Nov 5, 2025
28 checks passed
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.

6 participants