diff --git a/sycl/CMakeLists.txt b/sycl/CMakeLists.txt index 0348a05d03c34..8ac357b0e17c2 100644 --- a/sycl/CMakeLists.txt +++ b/sycl/CMakeLists.txt @@ -28,7 +28,7 @@ include(SYCLUtils) set(SYCL_MAJOR_VERSION 5) set(SYCL_MINOR_VERSION 7) set(SYCL_PATCH_VERSION 0) -set(SYCL_DEV_ABI_VERSION 1) +set(SYCL_DEV_ABI_VERSION 2) if (SYCL_ADD_DEV_VERSION_POSTFIX) set(SYCL_VERSION_POSTFIX "-${SYCL_DEV_ABI_VERSION}") endif() diff --git a/sycl/doc/extensions/deprecated/sycl_ext_oneapi_group_algorithms.asciidoc b/sycl/doc/extensions/deprecated/sycl_ext_oneapi_group_algorithms.asciidoc index 1492d678356bb..29468d0c3dbab 100644 --- a/sycl/doc/extensions/deprecated/sycl_ext_oneapi_group_algorithms.asciidoc +++ b/sycl/doc/extensions/deprecated/sycl_ext_oneapi_group_algorithms.asciidoc @@ -146,7 +146,7 @@ Group algorithms are performed collaboratively by the work-items in a group. All Many functions provide at least two overloads: one operating directly on data produced by the work-items in the group, and another operating on a range of data in memory specified by a pair of pointers. If the pointers passed to such a group function are not the same for all work-items in the group, their behavior is undefined. How the elements of a range are processed by the work-items in a group is undefined. -Using functions from the group algorithms library inside of a kernel may introduce additional limits on the resources available to user code inside the same kernel (e.g. private memory, work-group local memory). The behavior of these limits is implementation-defined, but must be reflected by calls to kernel querying functions such as +kernel::get_work_group_info+. +Using functions from the group algorithms library inside of a kernel may introduce additional limits on the resources available to user code inside the same kernel (e.g. private memory, work-group local memory). The behavior of these limits is implementation-defined, but must be reflected by calls to kernel querying functions such as +kernel::get_info+. It is undefined behavior for any of these functions to be invoked within a +parallel_for_work_group+ or +parallel_for_work_item+ context, but this restriction may be lifted in a future version of the proposal. diff --git a/sycl/include/sycl/kernel.hpp b/sycl/include/sycl/kernel.hpp index db88b1c321792..f7d13a1b73756 100644 --- a/sycl/include/sycl/kernel.hpp +++ b/sycl/include/sycl/kernel.hpp @@ -163,17 +163,6 @@ class __SYCL_EXPORT kernel { typename info::param_traits::input_type Value) const; - /// Query work-group information from a kernel using the - /// info::kernel_work_group descriptor for a specific device. - /// - /// \param Device is a valid SYCL device. - /// \return depends on information being queried. - template - __SYCL2020_DEPRECATED("get_work_group_info() is deprecated, use SYCL 2020 " - "kernel_device_specific queries instead") - typename info::param_traits::return_type - get_work_group_info(const device &Device) const; - /// Query sub-group information from a kernel using the /// info::kernel_sub_group descriptor for a specific device. /// diff --git a/sycl/source/kernel.cpp b/sycl/source/kernel.cpp index 923ee061f9ca1..8e3b95fb1910e 100644 --- a/sycl/source/kernel.cpp +++ b/sycl/source/kernel.cpp @@ -83,20 +83,6 @@ kernel::get_info(const device &Device, #undef __SYCL_PARAM_TRAITS_SPEC #undef __SYCL_PARAM_TRAITS_SPEC_WITH_INPUT -template -typename info::param_traits::return_type -kernel::get_work_group_info(const device &dev) const { - return impl->get_work_group_info(dev); -} - -#define __SYCL_PARAM_TRAITS_SPEC(param_type, param, ret_type) \ - template __SYCL_EXPORT ret_type \ - kernel::get_work_group_info(const device &) const; - -#include - -#undef __SYCL_PARAM_TRAITS_SPEC - template typename info::param_traits::return_type kernel::get_sub_group_info(const device &dev) const { diff --git a/sycl/test/abi/sycl_symbols_linux.dump b/sycl/test/abi/sycl_symbols_linux.dump index 89e4d8343f5e1..388956dc3dea8 100644 --- a/sycl/test/abi/sycl_symbols_linux.dump +++ b/sycl/test/abi/sycl_symbols_linux.dump @@ -3931,8 +3931,8 @@ _ZN2cl4sycl6detail2pi3dieEPKc _ZN2cl4sycl6detail2pi9assertionEbPKc _ZN2cl4sycl6detail2pi9getPluginILNS0_7backendE1EEERKNS1_6pluginEv _ZN2cl4sycl6detail2pi9getPluginILNS0_7backendE2EEERKNS1_6pluginEv -_ZN2cl4sycl6detail2pi9getPluginILNS0_7backendE5EEERKNS1_6pluginEv _ZN2cl4sycl6detail2pi9getPluginILNS0_7backendE3EEERKNS1_6pluginEv +_ZN2cl4sycl6detail2pi9getPluginILNS0_7backendE5EEERKNS1_6pluginEv _ZN2cl4sycl6detail36get_empty_interop_kernel_bundle_implERKNS0_7contextERKSt6vectorINS0_6deviceESaIS6_EE _ZN2cl4sycl6detail3usm12alignedAllocEmmRKNS0_7contextERKNS0_6deviceENS0_3usm5allocE _ZN2cl4sycl6detail3usm16alignedAllocHostEmmRKNS0_7contextENS0_3usm5allocE @@ -4197,6 +4197,7 @@ _ZNK2cl4sycl6device3hasENS0_6aspectE _ZNK2cl4sycl6device6is_cpuEv _ZNK2cl4sycl6device6is_gpuEv _ZNK2cl4sycl6device7is_hostEv +_ZNK2cl4sycl6device8get_infoILNS0_4info6deviceE131071EEENS3_12param_traitsIS4_XT_EE11return_typeEv _ZNK2cl4sycl6device8get_infoILNS0_4info6deviceE131072EEENS3_12param_traitsIS4_XT_EE11return_typeEv _ZNK2cl4sycl6device8get_infoILNS0_4info6deviceE131073EEENS3_12param_traitsIS4_XT_EE11return_typeEv _ZNK2cl4sycl6device8get_infoILNS0_4info6deviceE131074EEENS3_12param_traitsIS4_XT_EE11return_typeEv @@ -4300,7 +4301,6 @@ _ZNK2cl4sycl6device8get_infoILNS0_4info6deviceE65809EEENS3_12param_traitsIS4_XT_ _ZNK2cl4sycl6device8get_infoILNS0_4info6deviceE65810EEENS3_12param_traitsIS4_XT_EE11return_typeEv _ZNK2cl4sycl6device8get_infoILNS0_4info6deviceE65811EEENS3_12param_traitsIS4_XT_EE11return_typeEv _ZNK2cl4sycl6device8get_infoILNS0_4info6deviceE69632EEENS3_12param_traitsIS4_XT_EE11return_typeEv -_ZNK2cl4sycl6device8get_infoILNS0_4info6deviceE131071EEENS3_12param_traitsIS4_XT_EE11return_typeEv _ZNK2cl4sycl6device9getNativeEv _ZNK2cl4sycl6kernel11get_backendEv _ZNK2cl4sycl6kernel11get_contextEv @@ -4311,11 +4311,6 @@ _ZNK2cl4sycl6kernel18get_sub_group_infoILNS0_4info16kernel_sub_groupE16650EEENS3 _ZNK2cl4sycl6kernel18get_sub_group_infoILNS0_4info16kernel_sub_groupE4537EEENS3_12param_traitsIS4_XT_EE11return_typeERKNS0_6deviceE _ZNK2cl4sycl6kernel18get_sub_group_infoILNS0_4info16kernel_sub_groupE4538EEENS3_12param_traitsIS4_XT_EE11return_typeERKNS0_6deviceE _ZNK2cl4sycl6kernel18get_sub_group_infoILNS0_4info16kernel_sub_groupE8243EEENS3_12param_traitsIS4_XT_EE11return_typeERKNS0_6deviceENS6_10input_typeE -_ZNK2cl4sycl6kernel19get_work_group_infoILNS0_4info17kernel_work_groupE4528EEENS3_12param_traitsIS4_XT_EE11return_typeERKNS0_6deviceE -_ZNK2cl4sycl6kernel19get_work_group_infoILNS0_4info17kernel_work_groupE4529EEENS3_12param_traitsIS4_XT_EE11return_typeERKNS0_6deviceE -_ZNK2cl4sycl6kernel19get_work_group_infoILNS0_4info17kernel_work_groupE4531EEENS3_12param_traitsIS4_XT_EE11return_typeERKNS0_6deviceE -_ZNK2cl4sycl6kernel19get_work_group_infoILNS0_4info17kernel_work_groupE4532EEENS3_12param_traitsIS4_XT_EE11return_typeERKNS0_6deviceE -_ZNK2cl4sycl6kernel19get_work_group_infoILNS0_4info17kernel_work_groupE4533EEENS3_12param_traitsIS4_XT_EE11return_typeERKNS0_6deviceE _ZNK2cl4sycl6kernel3getEv _ZNK2cl4sycl6kernel7is_hostEv _ZNK2cl4sycl6kernel8get_infoILNS0_4info22kernel_device_specificE16650EEENS3_12param_traitsIS4_XT_EE11return_typeERKNS0_6deviceE diff --git a/sycl/test/abi/sycl_symbols_windows.dump b/sycl/test/abi/sycl_symbols_windows.dump index ad1f7924af4db..92b600fe46764 100644 --- a/sycl/test/abi/sycl_symbols_windows.dump +++ b/sycl/test/abi/sycl_symbols_windows.dump @@ -220,11 +220,6 @@ ??$get_sub_group_info@$0BBLK@@kernel@sycl@cl@@QEBAIAEBVdevice@12@@Z ??$get_sub_group_info@$0CADD@@kernel@sycl@cl@@QEBAIAEBVdevice@12@V?$range@$02@12@@Z ??$get_sub_group_info@$0EBAK@@kernel@sycl@cl@@QEBAIAEBVdevice@12@@Z -??$get_work_group_info@$0BBLA@@kernel@sycl@cl@@QEBA_KAEBVdevice@12@@Z -??$get_work_group_info@$0BBLB@@kernel@sycl@cl@@QEBA?AV?$range@$02@12@AEBVdevice@12@@Z -??$get_work_group_info@$0BBLD@@kernel@sycl@cl@@QEBA_KAEBVdevice@12@@Z -??$get_work_group_info@$0BBLE@@kernel@sycl@cl@@QEBA_KAEBVdevice@12@@Z -??$get_work_group_info@$0BBLF@@kernel@sycl@cl@@QEBA?AV?$range@$02@12@AEBVdevice@12@@Z ??$has_property@Vcontext_bound@buffer@property@sycl@cl@@@context@sycl@cl@@QEBA_NXZ ??$has_property@Vcontext_bound@buffer@property@sycl@cl@@@program@sycl@cl@@QEBA_NXZ ??$has_property@Vcontext_bound@buffer@property@sycl@cl@@@sampler@sycl@cl@@QEBA_NXZ @@ -305,18 +300,18 @@ ??0SYCLMemObjT@detail@sycl@cl@@QEAA@PEAU_cl_mem@@AEBVcontext@23@Vevent@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@@Z ??0SYCLMemObjT@detail@sycl@cl@@QEAA@PEAU_cl_mem@@AEBVcontext@23@_KVevent@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@@Z ??0SYCLMemObjT@detail@sycl@cl@@QEAA@_KAEBVcontext@23@_KVevent@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@@Z -??0SYCLMemObjT@detail@sycl@cl@@QEAA@_KAEBVproperty_list@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@@Z ??0SYCLMemObjT@detail@sycl@cl@@QEAA@_KAEBVcontext@23@_NVevent@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@@Z +??0SYCLMemObjT@detail@sycl@cl@@QEAA@_KAEBVproperty_list@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@@Z ??0accelerator_selector@sycl@cl@@QEAA@$$QEAV012@@Z ??0accelerator_selector@sycl@cl@@QEAA@AEBV012@@Z ??0accelerator_selector@sycl@cl@@QEAA@XZ +??0buffer_impl@detail@sycl@cl@@QEAA@PEAU_cl_mem@@AEBVcontext@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@Vevent@23@@Z ??0buffer_impl@detail@sycl@cl@@QEAA@PEAU_cl_mem@@AEBVcontext@23@_KV?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@Vevent@23@@Z ??0buffer_impl@detail@sycl@cl@@QEAA@PEAX_K1AEBVproperty_list@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@@Z ??0buffer_impl@detail@sycl@cl@@QEAA@PEBX_K1AEBVproperty_list@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@@Z ??0buffer_impl@detail@sycl@cl@@QEAA@_K0AEBVproperty_list@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@@Z -??0buffer_impl@detail@sycl@cl@@QEAA@_KAEBVcontext@23@_KV?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@Vevent@23@@Z -??0buffer_impl@detail@sycl@cl@@QEAA@PEAU_cl_mem@@AEBVcontext@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@Vevent@23@@Z ??0buffer_impl@detail@sycl@cl@@QEAA@_KAEBVcontext@23@V?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@_NVevent@23@@Z +??0buffer_impl@detail@sycl@cl@@QEAA@_KAEBVcontext@23@_KV?$unique_ptr@VSYCLMemObjAllocator@detail@sycl@cl@@U?$default_delete@VSYCLMemObjAllocator@detail@sycl@cl@@@std@@@std@@Vevent@23@@Z ??0context@sycl@cl@@AEAA@V?$shared_ptr@Vcontext_impl@detail@sycl@cl@@@std@@@Z ??0context@sycl@cl@@QEAA@$$QEAV012@@Z ??0context@sycl@cl@@QEAA@AEBV012@@Z diff --git a/sycl/test/warnings/kernel_wg_info_deprecation.cpp b/sycl/test/warnings/kernel_wg_info_deprecation.cpp deleted file mode 100644 index b1217ec7dba17..0000000000000 --- a/sycl/test/warnings/kernel_wg_info_deprecation.cpp +++ /dev/null @@ -1,25 +0,0 @@ -// RUN: %clangxx %fsycl-host-only -fsyntax-only -Xclang -verify -Xclang -verify-ignore-unexpected=note %s -o %t.out - -#include -#include - -using namespace sycl; - -int main() { - // expected-warning@+1 {{kernel_work_group enumeration is deprecated, use SYCL 2020 requests instead}} - info::kernel_work_group X; - - context C; - cl_kernel K1; - device D; - kernel K = make_kernel(K1, C); - // once for function, the other one is for function specialization - // expected-warning@+5 {{get_work_group_info() is deprecated, use SYCL 2020 kernel_device_specific queries instead}} - // expected-warning@+4 {{get_work_group_info() is deprecated, use SYCL 2020 kernel_device_specific queries instead}} - // once for enum, the other one is for enum element - // expected-warning@+2 {{kernel_work_group enumeration is deprecated, use SYCL 2020 requests instead}} - // expected-warning@+1 {{kernel_work_group enumeration is deprecated, use SYCL 2020 requests instead}} - (void)K.get_work_group_info(D); - - return 0; -} diff --git a/sycl/unittests/kernel-and-program/KernelInfo.cpp b/sycl/unittests/kernel-and-program/KernelInfo.cpp index b0fc9370d5ce2..0763c13b85101 100644 --- a/sycl/unittests/kernel-and-program/KernelInfo.cpp +++ b/sycl/unittests/kernel-and-program/KernelInfo.cpp @@ -136,11 +136,4 @@ TEST_F(KernelInfoTest, GetPrivateMemUsage) { EXPECT_EQ(TestContext->PrivateMemSizeCalled, true) << "Expect piKernelGetGroupInfo to be " << "called with PI_KERNEL_GROUP_INFO_PRIVATE_MEM_SIZE"; - - TestContext->PrivateMemSizeCalled = false; - Ker.get_work_group_info( - Ctx.get_devices()[0]); - EXPECT_EQ(TestContext->PrivateMemSizeCalled, true) - << "Expect piKernelGetGroupInfo to be " - << "called with PI_KERNEL_GROUP_INFO_PRIVATE_MEM_SIZE"; }