Skip to content

[SYCL] Move free function queries to experimental namespace #4090

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged

Conversation

alexbatashev
Copy link
Contributor

@alexbatashev alexbatashev commented Jul 12, 2021

Test changes are here: intel/llvm-test-suite#350

struct sub_group;
}
namespace experimental {
ONEAPI::sub_group this_sub_group();
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
ONEAPI::sub_group this_sub_group();
sycl::sub_group this_sub_group();

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This wouldn't work. sycl::sub_group is an alias to ONEAPI::sub_group, defined in sycl/sub_group.hpp, which in turn includes sycl/ONEAPI/sub_group.hpp. So, I'd either reference an undefined symbol or create a cyclic dependency.
I can add one more alias to sycl/ONEAPI/sub_group.hpp, if you'd like. It seems it doesn't lead to ODR violation or something.

@gmlueck
Copy link
Contributor

gmlueck commented Jul 12, 2021

Since these functions are a OneAPI extension, I think the namespace should be ::sycl::ext::oneapi::experimental. This is consistent with other OneAPI experimental extensions.

@dm-vodopyanov
Copy link
Contributor

Makes sense to merge this PR after #4014 which introduces sycl::ONEAPI -> sycl::ext::oneapi transition.

@alexbatashev alexbatashev force-pushed the free_function_queries_experimental branch from 3b9d43a to 5d39a3e Compare July 20, 2021 06:56
@alexbatashev alexbatashev requested a review from vladimirlaz July 20, 2021 08:02
@alexbatashev
Copy link
Contributor Author

I've updated patch to conform to #4014

@alexbatashev
Copy link
Contributor Author

@intel/dpcpp-specification-reviewers @intel/llvm-reviewers-runtime ping

Copy link
Contributor

@s-kanaev s-kanaev left a comment

Choose a reason for hiding this comment

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

LGTM

@romanovvlad romanovvlad merged commit 63ba1ce into intel:sycl Jul 22, 2021
@alexbatashev alexbatashev deleted the free_function_queries_experimental branch July 22, 2021 09:47
alexbatashev added a commit to alexbatashev/llvm that referenced this pull request Jul 22, 2021
…ackend_plugin

* upstream/sycl: (26 commits)
  [SPIR-V][NFC] Move non-upstreamed FuncParam decorations into internal:: (intel#4138)
  [SYCL] Move free function queries to experimental namespace (intel#4090)
  [SYCL][XPTI] Enable PI calls notifications with arguments (intel#4148)
  [SYCL] Revert queue::wait() to its old behaviour with Level Zero (intel#4153)
  [SYCL] Add missing <cstring> header to spirv.hpp (intel#4157)
  [SYCL] Adds info query for atomic_memory_order_capabilities on device and context (intel#4105)
  [SYCL] Improve performance of generic shuffles (intel#3815)
  [SYCL] Fix the error with namespaces caused during rebase of intel#4014 (intel#4151)
  [ESIMD] Fix 'ambiguous operator' error with length 1 simd operands (intel#4149)
  [libdevice][NFC] Fix libdevice dependencies list (intel#4130)
  [SPIR-V] Reland Encode debug info producer in SPIR-V (intel#4082)
  [SYCL][ROCm] Add ROCm support to get_device_count_by_type (intel#4113)
  [SYCL] Fix sRGB device info (intel#4145)
  [SYCL][ROCm] Fix kernel launch with multiple dimensions (intel#4063)
  [SYCL][ROCm] Fix compilation for AMD GPU with -fsycl-dead-args-optimization (intel#4126)
  [SYCL][Level Zero] Enable multi-CCS support. (intel#4038)
  [SYCL] Pass bound arch to unbundler (intel#4112)
  [ESIMD][doc] Added documentation for some ESIMD math APIs (intel#3995)
  [ESIMD] rename gather4/scatter4 to gather_rgba/scatter_rgba (intel#4120)
  [SYCL][NFC] Remove unused variable. (intel#4131)
  ...
romanovvlad pushed a commit that referenced this pull request Aug 19, 2021
#4090 moved free function queries to a different namespace.
Host device implementation actually relies on integration header
to extract information about free function queries and set the
appropriate values.
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants