Skip to content

[SYCL] Remove duplicate FunctionPropertyMetaInfo trait - #22741

Merged
againull merged 1 commit into
intel:syclfrom
koparasy:dedup-function-property-metainfo-22729
Jul 23, 2026
Merged

[SYCL] Remove duplicate FunctionPropertyMetaInfo trait#22741
againull merged 1 commit into
intel:syclfrom
koparasy:dedup-function-property-metainfo-22729

Conversation

@koparasy

Copy link
Copy Markdown
Contributor

Commit bba4f4d (#21738) split out the lightweight free_function_kernel_properties.hpp and introduced a parallel detail::FunctionPropertyMetaInfo trait alongside PropertyMetaInfo. This forced every property usable on both the property-list and free-function paths to carry two structurally identical specializations, and caused the grf_size breakage fixed in #22713.

The duplication was unnecessary: PropertyMetaInfo (property.hpp) and the shared SizeListToStr/AllNonZero helpers (property_utils.hpp) are already on the lightweight include path, so reusing them is compile-time neutral

Drop FunctionPropertyMetaInfo entirely and point the macro at PropertyMetaInfo, remove the duplicate specializations in free_function_kernel_properties.hpp, grf_size_properties.hpp, kernel_properties.hpp and virtual_functions.hpp, and move AllNonZero into property_utils.hpp next to SizeListToStr.

Measured compilation times between this PR and HEAD for free_function_kernel_properties.hpp remains the same.

Fixes #22729

Commit bba4f4d (intel#21738) split out the lightweight
free_function_kernel_properties.hpp and introduced a parallel
detail::FunctionPropertyMetaInfo<T> trait alongside PropertyMetaInfo<T>.
This forced every property usable on both the property-list and
free-function paths to carry two structurally identical specializations,
and caused the grf_size breakage fixed in intel#22713.

The duplication was unnecessary: PropertyMetaInfo (property.hpp) and the
shared SizeListToStr/AllNonZero helpers (property_utils.hpp) are already
on the lightweight include path, so reusing them is compile-time neutral

Drop FunctionPropertyMetaInfo entirely and point the macro at
PropertyMetaInfo, remove the duplicate specializations in
free_function_kernel_properties.hpp, grf_size_properties.hpp,
kernel_properties.hpp and virtual_functions.hpp, and move AllNonZero into
property_utils.hpp next to SizeListToStr.

Measured compilation times between this PR and HEAD for `free_function_kernel_properties.hpp`
remains the same.

Fixes intel#22729
@koparasy
koparasy requested a review from a team as a code owner July 23, 2026 13:41
@koparasy
koparasy requested review from againull and sarnex July 23, 2026 13:41

@sarnex sarnex 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.

lgtm, thanks! please wait for another review from the runtime team since i am not super familiar with the property implementation

@sarnex
sarnex requested a review from a team July 23, 2026 14:56
@againull
againull merged commit f3121ca into intel:sycl Jul 23, 2026
57 of 63 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.

FunctionPropertyMetaInfo and PropertyMetaInfo are duplicated for every property

3 participants