Skip to content
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][NATIVECPU] Add Native CPU specific property mechanism and nd_range property #16152

Open
wants to merge 6 commits into
base: sycl
Choose a base branch
from

Conversation

PietroGhg
Copy link
Contributor

@PietroGhg PietroGhg commented Nov 21, 2024

This PR adds a mechanism to process Native CPU-specific kernel properties, and uses that mechanism to process a kernel property to check whether or not a kernel uses features provided by sycl::nd_range (e.g. get_local_id, local memory, workgroup_barrier).
This information is employed when enqueueing the kernel: if the kernel doesn't use nd_range features, we can restructure the nd_range, allowing us to pack more work items into a work group, which plays well with the vectorization/scheduling process used by Native CPU.
In particular this PR:

  • Adds a CheckNDRangeSYCLNativeCPU pass which checks if the kernels uses features from an nd_range
  • Adds a SYCL/native cpu properties section in the properties file, which will contain kernel properties specific to Native CPU.

UR PR: oneapi-src/unified-runtime#2367

Copy link
Contributor

@elizabethandrews elizabethandrews left a comment

Choose a reason for hiding this comment

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

FE changes just adds a pass. LGTM

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.

2 participants