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] Deprecate parallel_for and single_task overloads #16145

Closed
wants to merge 34 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
9e1bfc6
[SYCL] Deprecate parallel_for and single_task overloads in the sycl_e…
HPS-1 Nov 21, 2024
21fd2d9
[SYCL] Update affected llvm-lit test cases to ignore deprecation warn…
HPS-1 Nov 22, 2024
ed7dec2
[SYCL] Fix affected e2e test cases
HPS-1 Nov 22, 2024
e9e77e1
[SYCL] Fix affected CUDA e2e test cases
HPS-1 Nov 22, 2024
22ae374
[SYCL] Update Graph/Explicit/work_group_size_prop.cpp
HPS-1 Nov 22, 2024
fab09cf
Merge remote-tracking branch 'origin/sycl' into issue-63482
HPS-1 Nov 24, 2024
241d271
[SYCL] Use proper deprecation warning type
HPS-1 Nov 26, 2024
f68f456
[SYCL] Revert changes to E2E tests
HPS-1 Dec 16, 2024
e7666a0
[SYCL] Revert changes to llvm-lit tests (without reductions)
HPS-1 Dec 16, 2024
677cf8e
[SYCL] Add TODO comments for tests with -Wno-deprecated-declarations …
HPS-1 Dec 16, 2024
914304b
[SYCL] Revert unrelated changes
HPS-1 Dec 16, 2024
ea7dc50
Merge remote-tracking branch 'origin/sycl' into issue-63482
HPS-1 Jan 7, 2025
370a34e
[SYCL] Add test for newly added depre. warnings
HPS-1 Jan 7, 2025
870f92f
Revert "[SYCL] Add test for newly added depre. warnings"
HPS-1 Jan 7, 2025
14943ba
[SYCL] Add new warning test
HPS-1 Jan 7, 2025
d56a99b
[SYCL] Remove unused variables
HPS-1 Jan 7, 2025
1f477f5
Merge remote-tracking branch 'origin/sycl' into issue-63482
HPS-1 Jan 15, 2025
9616ef6
[SYCL] Rewrite multiple-translation-units tests
HPS-1 Jan 16, 2025
6335da7
[SYCL] Add template keywords
HPS-1 Jan 16, 2025
1fdcd87
[SYCL] Fix formatting issue
HPS-1 Jan 16, 2025
0d56230
Merge remote-tracking branch 'origin/sycl' into issue-63482
HPS-1 Jan 21, 2025
7280d80
[SYCL] Add missing deprecation warnings in handler.hpp
HPS-1 Jan 21, 2025
1c6354b
[SYCL] Deprecate parallel_for(nd_range with props) in queue.hpp
HPS-1 Jan 21, 2025
bab4240
[SYCL] Deprecate parallel_for(range with props) in queue.hpp
HPS-1 Jan 21, 2025
4c126d2
[SYCL] E2E Test fix for last update #1
HPS-1 Jan 23, 2025
ce067bb
[SYCL] Minor fix
HPS-1 Jan 23, 2025
7cb9d8e
[SYCL] E2E Test fix for last update #2
HPS-1 Jan 23, 2025
4314e4b
[SYCL] Minor fix 2
HPS-1 Jan 23, 2025
82ec026
[SYCL] Minor fix 3
HPS-1 Jan 23, 2025
91af441
[SYCL] Minor fix 3
HPS-1 Jan 23, 2025
6e9f228
[SYCL] Minor fix 4
HPS-1 Jan 23, 2025
12514e7
[SYCL] Test
HPS-1 Jan 23, 2025
1e3e47a
[SYCL] Revert commit Test
HPS-1 Jan 23, 2025
0b54ead
[SYCL] E2E Test fix for last update #3
HPS-1 Jan 24, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
115 changes: 76 additions & 39 deletions sycl/include/sycl/handler.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2292,61 +2292,80 @@ class __SYCL_EXPORT handler {

template <typename KernelName = detail::auto_name, typename KernelType,
typename PropertiesT>
std::enable_if_t<
ext::oneapi::experimental::is_property_list<PropertiesT>::value>
single_task(PropertiesT Props, _KERNELFUNCPARAM(KernelFunc)) {
__SYCL_DEPRECATED(
"Use sycl::ext::oneapi::experimental::single_task (provided in the "
"sycl_ext_oneapi_enqueue_functions extension) instead.")
std::enable_if_t<ext::oneapi::experimental::is_property_list<
PropertiesT>::value> single_task(PropertiesT Props,
_KERNELFUNCPARAM(KernelFunc)) {
single_task_lambda_impl<KernelName, KernelType, PropertiesT>(Props,
KernelFunc);
}

template <typename KernelName = detail::auto_name, typename KernelType,
typename PropertiesT>
std::enable_if_t<
ext::oneapi::experimental::is_property_list<PropertiesT>::value>
parallel_for(range<1> NumWorkItems, PropertiesT Props,
_KERNELFUNCPARAM(KernelFunc)) {
__SYCL_DEPRECATED(
"Use sycl::ext::oneapi::experimental::single_task (provided in the "
HPS-1 marked this conversation as resolved.
Show resolved Hide resolved
"sycl_ext_oneapi_enqueue_functions extension) instead.")
std::enable_if_t<ext::oneapi::experimental::is_property_list<
PropertiesT>::value> parallel_for(range<1> NumWorkItems,
PropertiesT Props,
_KERNELFUNCPARAM(KernelFunc)) {
parallel_for_lambda_impl<KernelName, KernelType, 1, PropertiesT>(
NumWorkItems, Props, std::move(KernelFunc));
}

template <typename KernelName = detail::auto_name, typename KernelType,
typename PropertiesT>
std::enable_if_t<
ext::oneapi::experimental::is_property_list<PropertiesT>::value>
parallel_for(range<2> NumWorkItems, PropertiesT Props,
_KERNELFUNCPARAM(KernelFunc)) {
__SYCL_DEPRECATED(
"Use sycl::ext::oneapi::experimental::single_task (provided in the "
"sycl_ext_oneapi_enqueue_functions extension) instead.")
std::enable_if_t<ext::oneapi::experimental::is_property_list<
PropertiesT>::value> parallel_for(range<2> NumWorkItems,
PropertiesT Props,
_KERNELFUNCPARAM(KernelFunc)) {
parallel_for_lambda_impl<KernelName, KernelType, 2, PropertiesT>(
NumWorkItems, Props, std::move(KernelFunc));
}

template <typename KernelName = detail::auto_name, typename KernelType,
typename PropertiesT>
std::enable_if_t<
ext::oneapi::experimental::is_property_list<PropertiesT>::value>
parallel_for(range<3> NumWorkItems, PropertiesT Props,
_KERNELFUNCPARAM(KernelFunc)) {
__SYCL_DEPRECATED(
"Use sycl::ext::oneapi::experimental::single_task (provided in the "
"sycl_ext_oneapi_enqueue_functions extension) instead.")
std::enable_if_t<ext::oneapi::experimental::is_property_list<
PropertiesT>::value> parallel_for(range<3> NumWorkItems,
PropertiesT Props,
_KERNELFUNCPARAM(KernelFunc)) {
parallel_for_lambda_impl<KernelName, KernelType, 3, PropertiesT>(
NumWorkItems, Props, std::move(KernelFunc));
}

template <typename KernelName = detail::auto_name, typename KernelType,
typename PropertiesT, int Dims>
std::enable_if_t<
ext::oneapi::experimental::is_property_list<PropertiesT>::value>
parallel_for(nd_range<Dims> Range, PropertiesT Properties,
_KERNELFUNCPARAM(KernelFunc)) {
__SYCL_DEPRECATED(
"Use sycl::ext::oneapi::experimental::single_task (provided in the "
"sycl_ext_oneapi_enqueue_functions extension) instead.")
std::enable_if_t<ext::oneapi::experimental::is_property_list<
PropertiesT>::value> parallel_for(nd_range<Dims> Range,
PropertiesT Properties,
_KERNELFUNCPARAM(KernelFunc)) {
parallel_for_impl<KernelName>(Range, Properties, std::move(KernelFunc));
}

/// Reductions @{

template <typename KernelName = detail::auto_name, typename PropertiesT,
typename... RestT>
std::enable_if_t<
(sizeof...(RestT) > 1) &&
detail::AreAllButLastReductions<RestT...>::value &&
ext::oneapi::experimental::is_property_list<PropertiesT>::value>
parallel_for(range<1> Range, PropertiesT Properties, RestT &&...Rest) {
__SYCL_DEPRECATED(
"Use sycl::ext::oneapi::experimental::parallel_for (provided in the "
"sycl_ext_oneapi_enqueue_functions extension) instead.")
std::enable_if_t<(sizeof...(RestT) > 1) &&
detail::AreAllButLastReductions<RestT...>::value &&
ext::oneapi::experimental::is_property_list<
PropertiesT>::value> parallel_for(range<1> Range,
PropertiesT Properties,
RestT &&...Rest) {
#ifndef __SYCL_DEVICE_ONLY__
throwIfGraphAssociated<ext::oneapi::experimental::detail::
UnsupportedGraphFeatures::sycl_reductions>();
Expand All @@ -2357,11 +2376,15 @@ class __SYCL_EXPORT handler {

template <typename KernelName = detail::auto_name, typename PropertiesT,
typename... RestT>
std::enable_if_t<
(sizeof...(RestT) > 1) &&
detail::AreAllButLastReductions<RestT...>::value &&
ext::oneapi::experimental::is_property_list<PropertiesT>::value>
parallel_for(range<2> Range, PropertiesT Properties, RestT &&...Rest) {
__SYCL_DEPRECATED(
"Use sycl::ext::oneapi::experimental::parallel_for (provided in the "
"sycl_ext_oneapi_enqueue_functions extension) instead.")
std::enable_if_t<(sizeof...(RestT) > 1) &&
detail::AreAllButLastReductions<RestT...>::value &&
ext::oneapi::experimental::is_property_list<
PropertiesT>::value> parallel_for(range<2> Range,
PropertiesT Properties,
RestT &&...Rest) {
#ifndef __SYCL_DEVICE_ONLY__
throwIfGraphAssociated<ext::oneapi::experimental::detail::
UnsupportedGraphFeatures::sycl_reductions>();
Expand All @@ -2372,11 +2395,15 @@ class __SYCL_EXPORT handler {

template <typename KernelName = detail::auto_name, typename PropertiesT,
typename... RestT>
std::enable_if_t<
(sizeof...(RestT) > 1) &&
detail::AreAllButLastReductions<RestT...>::value &&
ext::oneapi::experimental::is_property_list<PropertiesT>::value>
parallel_for(range<3> Range, PropertiesT Properties, RestT &&...Rest) {
__SYCL_DEPRECATED(
"Use sycl::ext::oneapi::experimental::parallel_for (provided in the "
"sycl_ext_oneapi_enqueue_functions extension) instead.")
std::enable_if_t<(sizeof...(RestT) > 1) &&
detail::AreAllButLastReductions<RestT...>::value &&
ext::oneapi::experimental::is_property_list<
PropertiesT>::value> parallel_for(range<3> Range,
PropertiesT Properties,
RestT &&...Rest) {
#ifndef __SYCL_DEVICE_ONLY__
throwIfGraphAssociated<ext::oneapi::experimental::detail::
UnsupportedGraphFeatures::sycl_reductions>();
Expand Down Expand Up @@ -2411,11 +2438,15 @@ class __SYCL_EXPORT handler {

template <typename KernelName = detail::auto_name, int Dims,
typename PropertiesT, typename... RestT>
std::enable_if_t<
(sizeof...(RestT) > 1) &&
detail::AreAllButLastReductions<RestT...>::value &&
ext::oneapi::experimental::is_property_list<PropertiesT>::value>
parallel_for(nd_range<Dims> Range, PropertiesT Properties, RestT &&...Rest) {
__SYCL_DEPRECATED(
"Use sycl::ext::oneapi::experimental::parallel_for (provided in the "
"sycl_ext_oneapi_enqueue_functions extension) instead.")
std::enable_if_t<(sizeof...(RestT) > 1) &&
detail::AreAllButLastReductions<RestT...>::value &&
ext::oneapi::experimental::is_property_list<
PropertiesT>::value> parallel_for(nd_range<Dims> Range,
PropertiesT Properties,
RestT &&...Rest) {
#ifndef __SYCL_DEVICE_ONLY__
throwIfGraphAssociated<ext::oneapi::experimental::detail::
UnsupportedGraphFeatures::sycl_reductions>();
Expand All @@ -2437,6 +2468,9 @@ class __SYCL_EXPORT handler {

template <typename KernelName = detail::auto_name, typename KernelType,
int Dims, typename PropertiesT>
__SYCL_DEPRECATED(
"Use sycl::ext::oneapi::experimental::parallel_for (provided in the "
"sycl_ext_oneapi_enqueue_functions extension) instead.")
void parallel_for_work_group(range<Dims> NumWorkGroups, PropertiesT Props,
HPS-1 marked this conversation as resolved.
Show resolved Hide resolved
_KERNELFUNCPARAM(KernelFunc)) {
parallel_for_work_group_lambda_impl<KernelName, KernelType, Dims,
Expand All @@ -2446,6 +2480,9 @@ class __SYCL_EXPORT handler {

template <typename KernelName = detail::auto_name, typename KernelType,
int Dims, typename PropertiesT>
__SYCL_DEPRECATED(
"Use sycl::ext::oneapi::experimental::parallel_for (provided in the "
"sycl_ext_oneapi_enqueue_functions extension) instead.")
void parallel_for_work_group(range<Dims> NumWorkGroups,
range<Dims> WorkGroupSize, PropertiesT Props,
_KERNELFUNCPARAM(KernelFunc)) {
Expand Down
Loading
Loading