-
Notifications
You must be signed in to change notification settings - Fork 752
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
[SPIR-V][DOC] add extensions for subgroup requirements #11301
base: sycl
Are you sure you want to change the base?
Conversation
Signed-off-by: Ben Ashbaugh <[email protected]>
|===== | ||
2+^.^| Execution Mode 3+<.^| Extra Operands | Enabling Capabilities | ||
| 6446 | *NamedSubgroupSizeINTEL* | ||
3+| _Named Subgroup Size_ | *SubgroupRequirementsINTEL* |
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.
The SubgroupSize
execution mode has SubgroupDispatch
as an enabling capability, should NamedSubgroupSizeINTEL
have SubgroupDispatch
as well?
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.
Good question, and good observation!
I think it could, but currently the SubgroupDispatch
capability "implicitly declares" the DeviceEnqueue
capability. This is almost certainly a mistake, and we're looking at ways to fix this in the Khronos SPIR working group (for Khronos folks, see internal SPIR-V issue 525). Until this is resolved though, I'd prefer not to propagate this mistake to another feature, and I think this feature can stand on its own without needing anything else from SubgroupDispatch
. Does this make sense?
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 see, that makes sense, thanks for the clarification.
Spec: intel/llvm#11301 More accurately, this PR adds support for the named subgroup related features of SPV_INTEL_subgroup_requirements to support implementation of sycl_ext_named_sub_group_sizes (also see intel/llvm#12335). The features related to subgroup lane mapping are not added yet.
Spec: #11301 More accurately, this PR adds support for the named subgroup related features of SPV_INTEL_subgroup_requirements to support implementation of sycl_ext_named_sub_group_sizes (also see #12335). The features related to subgroup lane mapping are not added yet. Original commit: KhronosGroup/SPIRV-LLVM-Translator@43acfef
This pull request is stale because it has been open 180 days with no activity. Remove stale label or comment or this will be automatically closed in 30 days. |
This PR has draft SPIR-V and OpenCL extensions to describe "subgroup requirements". These are preview extensions, intended to provide early access to a feature for review and community feedback.
These sorts of "subgroup requirements" could be used to implement sycl_ext_oneapi_named_sub_group_sizes, for example.