Skip to content

[SYCL] Deprecate legacy info::kernel descriptors - #22520

Open
crystarm wants to merge 10 commits into
intel:syclfrom
crystarm:deprecate-legacy-kernel-info-descriptors
Open

[SYCL] Deprecate legacy info::kernel descriptors#22520
crystarm wants to merge 10 commits into
intel:syclfrom
crystarm:deprecate-legacy-kernel-info-descriptors

Conversation

@crystarm

@crystarm crystarm commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Fixes #22505.

Deprecate three undocumented legacy info::kernel descriptors that are not part of SYCL 2020:

  • info::kernel::function_name
  • info::kernel::reference_count
  • info::kernel::context

Each descriptor is now annotated with __SYCL_DEPRECATED(...) and guarded by #ifndef __INTEL_PREVIEW_BREAKING_CHANGES, following the same pattern as info::platform::profile and info::device::atomic64.

@crystarm
crystarm requested a review from a team as a code owner July 2, 2026 11:38
@crystarm
crystarm marked this pull request as draft July 2, 2026 11:57
Comment thread sycl/include/sycl/info/kernel.hpp Outdated
struct function_name : kernel_traits<UR_KERNEL_INFO_FUNCTION_NAME> {
#ifndef __INTEL_PREVIEW_BREAKING_CHANGES
struct __SYCL_DEPRECATED(
"info::kernel::function_name is a legacy descriptor not part of SYCL "

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I doubt we should explain that it is a legacy descriptor here. usually we just say that something is deprecated.

@dm-vodopyanov can you please guide us here?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@KseniyaTikhomirova @dm-vodopyanov what wording would be good here from your POV?

@KseniyaTikhomirova KseniyaTikhomirova Jul 28, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

"smth is deprecated." If there is any replacement - then specify what it is. I usually use our code as example, see https://github.com/intel/llvm/blob/sycl/sycl/include/sycl/sub_group.hpp#L111

@crystarm
crystarm force-pushed the deprecate-legacy-kernel-info-descriptors branch from d6e8473 to 7af6a9c Compare July 2, 2026 12:15
@crystarm
crystarm marked this pull request as ready for review July 2, 2026 12:25
Comment thread sycl/include/sycl/info/kernel.hpp
Comment thread sycl/include/sycl/info/kernel.hpp Outdated
@KornevNikita

Copy link
Copy Markdown
Contributor

@crystarm could you please resolve format & pre-commit issues

@KornevNikita KornevNikita left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Some E2E also need "__INTEL_PREVIEW_BREAKING_CHANGES" guards, see the self-build jobs

Comment thread sycl/include/sycl/info/kernel.hpp Outdated
@KornevNikita

KornevNikita commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

@crystarm could you please resolve merge conflict? can't start pre-commit with the conflict
UPD. nevermind, I've resolved it.

Comment thread sycl/test-e2e/Basic/kernel_info.cpp
Comment thread sycl/source/kernel.cpp Outdated
Comment thread sycl/test-e2e/FreeFunctionKernels/kernel_bundle.cpp Outdated
@crystarm

Copy link
Copy Markdown
Contributor Author

Pushed a follow-up addressing the remaining review comments:

  • kernel.cpp: dropped the redundant nested __INTEL_PREVIEW_BREAKING_CHANGES guard around reference_count.
  • kernel_bundle.cpp: kept has_kernel(id) unconditional in the E2E test; only the function_name check is guarded now.
  • info/kernel.hpp: reworded the __SYCL_DEPRECATED messages to "smth is deprecated."
  • sycl_2020_deprecations.cpp: updated the expected warning text for reference_count to match.

@KornevNikita KornevNikita left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@crystarm could you please resolve the merge conflict

@crystarm
crystarm marked this pull request as draft July 31, 2026 12:37
@crystarm
crystarm force-pushed the deprecate-legacy-kernel-info-descriptors branch from cbff67e to ab23bd2 Compare July 31, 2026 12:49
@crystarm
crystarm force-pushed the deprecate-legacy-kernel-info-descriptors branch from ab23bd2 to b71fd4d Compare July 31, 2026 13:03
@crystarm
crystarm marked this pull request as ready for review July 31, 2026 14:34
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.

Remove undocumented kernel::info descriptors

3 participants