-
Notifications
You must be signed in to change notification settings - Fork 769
[SYCL][Doc] Update sub-group docs #1565
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
Conversation
Signed-off-by: John Pennycook <john.pennycook@intel.com>
Signed-off-by: John Pennycook <john.pennycook@intel.com>
Signed-off-by: John Pennycook <john.pennycook@intel.com>
Sub-group queries build on SYCL_device_specific_kernel_queries. Signed-off-by: John Pennycook <john.pennycook@intel.com>
I hadn't realized that SYCL_device_specific_kernel_queries had been merged in #1540. I've pushed a new commit to align the sub-group queries with the syntax there -- @Felipe-Intel, could you please take a look? |
LGTM! |
@AlexeySachkov Ping. |
|+template <info::kernel_sub_group param>typename info::param_traits<info::kernel_sub_group, param>::return_type get_sub_group_info(const device &dev) const+ | ||
|Query information from the sub-group from a kernel using the +info::kernel_sub_group+ descriptor for a specific device. | ||
|+template <info::kernel_device_specific param>typename info::param_traits<info::kernel_device_specific, param>::return_type get_info(const device &dev, typename info::param_traits<info::kernel_device_specific, param>::input_type value) const+ | ||
|Query information from a kernel using the +info::kernel_device_specific+ descriptor for a specific device and input parameter. The expected value of the input parameter depends on the information being queried. |
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.
Is it required to be mentioned that the second argument is optional when not needed?
The previous version had both versions of get_sub_group_info APIs mentioned.
https://github.com/intel/llvm/blob/fba2e0602550a86c74149d9875b788ad1117f8d3/sycl/doc/extensions/SubGroupNDRange/SubGroupNDRange.md
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've added a reference to SYCL_device_specific_kernel_queries and highlighted that which version should be used depends on whether there is an input type specified for the query or not. Thanks!
Signed-off-by: John Pennycook <john.pennycook@intel.com>
Hi John, |
|
I had a call with John. He confirmed that my understanding was correct. |
@Pennycook Is this PR not merged for some reason. The PR corresponding to this change in SYCL : #1600 is ready to be merged. |
It cannot be merged without a review from one of the code owners for the extensions directory. @jbrodman, can you approve if there are no other concerns? @garimagu and I agree that what's specified here is correct, and we'll open a new issue if future updates are needed. |
Implements the change as per the spec update at https://github.com/intel/llvm/blob/sycl/sycl/doc/extensions/SubGroup/SYCL_INTEL_sub_group.asciidoc and update from : intel#1565 ABI update: Functions corresponding to the deleted APIs have been deleted. Edit info.cpp test to expect max sub-group size based on the spec update. Changed pi.h document and changed the plugin to always return a 32 bit value. ABI version update. Signed-off-by: Garima Gupta <garima.gupta@intel.com>
Implements the change as per the spec update at https://github.com/intel/llvm/blob/sycl/sycl/doc/extensions/SubGroup/SYCL_INTEL_sub_group.asciidoc and update from : #1565 ABI update: Functions corresponding to the deleted APIs have been deleted. Edit info.cpp test to expect max sub-group size based on the spec update. Changed pi.h document and changed the plugin to always return a 32 bit value. Signed-off-by: Garima Gupta <garima.gupta@intel.com>
Incompatible with memory model introduced by ExtendedAtomics extension. Signed-off-by: John Pennycook <john.pennycook@intel.com>
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.
LGTM
Reverts some changes made when switching from SubGroupNDRange to SubGroup extension:
max_sub_group_size
must take a work-group size in order to support OpenCLbarrier
member function was removed by mistakeshuffle
functions should be supported in addition to the higher-levelpermute
andshift_*
functions from the SubGroupAlgorithms extensionThanks to @AlexeySachkov and @jasonsewall-intel for noticing some of these issues!