From 5fa1c1359dff878a1c9aa7281c9edd48bee4ba94 Mon Sep 17 00:00:00 2001 From: foreman Date: Thu, 7 Sep 2017 16:00:01 -0400 Subject: [PATCH] P4 to Git Change 1456363 by wchau@wchau_OCL_boltzmann on 2017/09/07 15:47:03 SWDEV-130808 - Add support of two new queries: CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD, CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD. Affected files ... ... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_device.cpp#64 edit ... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl.hpp#4 edit ... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl_ext.h#15 edit ... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl.hpp#6 edit ... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl_ext.h#31 edit ... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl.hpp#3 edit ... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl_ext.h#8 edit ... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl.hpp#2 edit ... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl_ext.h#2 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#288 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#570 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpusettings.cpp#353 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpusettings.hpp#99 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#55 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#30 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.hpp#11 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#58 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocsettings.cpp#21 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocsettings.hpp#9 edit ... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#275 edit [ROCm/clr commit: b4af4d6f543c4b69a2c12b9b534b5a4cc2590c6b] --- projects/clr/opencl/api/opencl/amdocl/cl_device.cpp | 4 +++- .../opencl/api/opencl/khronos/headers/opencl1.2/CL/cl.hpp | 6 ++++++ .../opencl/api/opencl/khronos/headers/opencl1.2/CL/cl_ext.h | 2 ++ .../opencl/api/opencl/khronos/headers/opencl2.0/CL/cl.hpp | 6 ++++++ .../opencl/api/opencl/khronos/headers/opencl2.0/CL/cl_ext.h | 2 ++ .../opencl/api/opencl/khronos/headers/opencl2.1/CL/cl.hpp | 6 ++++++ .../opencl/api/opencl/khronos/headers/opencl2.1/CL/cl_ext.h | 2 ++ .../opencl/api/opencl/khronos/headers/opencl2.2/CL/cl.hpp | 6 ++++++ .../opencl/api/opencl/khronos/headers/opencl2.2/CL/cl_ext.h | 2 ++ 9 files changed, 35 insertions(+), 1 deletion(-) diff --git a/projects/clr/opencl/api/opencl/amdocl/cl_device.cpp b/projects/clr/opencl/api/opencl/amdocl/cl_device.cpp index 035b59709b..3882a98df2 100644 --- a/projects/clr/opencl/api/opencl/amdocl/cl_device.cpp +++ b/projects/clr/opencl/api/opencl/amdocl/cl_device.cpp @@ -248,7 +248,9 @@ RUNTIME_ENTRY(cl_int, clGetDeviceInfo, CASE(CL_DEVICE_VENDOR_ID, vendorId_); CASE(CL_DEVICE_MAX_COMPUTE_UNITS, maxComputeUnits_); CASE(CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS, maxWorkItemDimensions_); - CASE(CL_DEVICE_MAX_WORK_GROUP_SIZE, maxWorkGroupSize_); + CASE(CL_DEVICE_MAX_WORK_GROUP_SIZE, preferredWorkGroupSize_); + CASE(CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD, preferredWorkGroupSize_); + CASE(CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD, maxWorkGroupSize_); CASE(CL_DEVICE_MAX_WORK_ITEM_SIZES, maxWorkItemSizes_); CASE(CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR, preferredVectorWidthChar_); CASE(CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT, preferredVectorWidthShort_); diff --git a/projects/clr/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl.hpp b/projects/clr/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl.hpp index 18175abc2a..bd64d4b3bd 100644 --- a/projects/clr/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl.hpp +++ b/projects/clr/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl.hpp @@ -1541,6 +1541,12 @@ __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_LOCAL_MEM_SIZE_PER_COMPUTE_U #ifdef CL_DEVICE_LOCAL_MEM_BANKS_AMD __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_LOCAL_MEM_BANKS_AMD, cl_uint) #endif +#ifdef CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD +__CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD, ::size_t) +#endif +#ifdef CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD +__CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD, ::size_t) +#endif #ifdef CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV, cl_uint) diff --git a/projects/clr/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl_ext.h b/projects/clr/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl_ext.h index 8106804802..d1940d40de 100644 --- a/projects/clr/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl_ext.h +++ b/projects/clr/opencl/api/opencl/khronos/headers/opencl1.2/CL/cl_ext.h @@ -207,6 +207,8 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clTerminateContextKHR_fn)(cl_context / #define CL_DEVICE_GFXIP_MAJOR_AMD 0x404A #define CL_DEVICE_GFXIP_MINOR_AMD 0x404B #define CL_DEVICE_AVAILABLE_ASYNC_QUEUES_AMD 0x404C +#define CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD 0x4030 +#define CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD 0x4031 typedef union { diff --git a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl.hpp b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl.hpp index 18175abc2a..bd64d4b3bd 100644 --- a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl.hpp +++ b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl.hpp @@ -1541,6 +1541,12 @@ __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_LOCAL_MEM_SIZE_PER_COMPUTE_U #ifdef CL_DEVICE_LOCAL_MEM_BANKS_AMD __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_LOCAL_MEM_BANKS_AMD, cl_uint) #endif +#ifdef CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD +__CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD, ::size_t) +#endif +#ifdef CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD +__CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD, ::size_t) +#endif #ifdef CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV, cl_uint) diff --git a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl_ext.h b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl_ext.h index 892382ee6d..09d722c44c 100644 --- a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl_ext.h +++ b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.0/CL/cl_ext.h @@ -226,6 +226,8 @@ typedef CL_API_ENTRY cl_program #define CL_DEVICE_GFXIP_MAJOR_AMD 0x404A #define CL_DEVICE_GFXIP_MINOR_AMD 0x404B #define CL_DEVICE_AVAILABLE_ASYNC_QUEUES_AMD 0x404C +#define CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD 0x4030 +#define CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD 0x4031 typedef union { diff --git a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl.hpp b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl.hpp index 18175abc2a..bd64d4b3bd 100644 --- a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl.hpp +++ b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl.hpp @@ -1541,6 +1541,12 @@ __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_LOCAL_MEM_SIZE_PER_COMPUTE_U #ifdef CL_DEVICE_LOCAL_MEM_BANKS_AMD __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_LOCAL_MEM_BANKS_AMD, cl_uint) #endif +#ifdef CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD +__CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD, ::size_t) +#endif +#ifdef CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD +__CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD, ::size_t) +#endif #ifdef CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV, cl_uint) diff --git a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl_ext.h b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl_ext.h index 3fee2f7bc9..e9976ae44b 100644 --- a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl_ext.h +++ b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.1/CL/cl_ext.h @@ -207,6 +207,8 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clTerminateContextKHR_fn)(cl_context / #define CL_DEVICE_GFXIP_MAJOR_AMD 0x404A #define CL_DEVICE_GFXIP_MINOR_AMD 0x404B #define CL_DEVICE_AVAILABLE_ASYNC_QUEUES_AMD 0x404C +#define CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD 0x4030 +#define CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD 0x4031 typedef union { diff --git a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl.hpp b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl.hpp index 18175abc2a..bd64d4b3bd 100644 --- a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl.hpp +++ b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl.hpp @@ -1541,6 +1541,12 @@ __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_LOCAL_MEM_SIZE_PER_COMPUTE_U #ifdef CL_DEVICE_LOCAL_MEM_BANKS_AMD __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_LOCAL_MEM_BANKS_AMD, cl_uint) #endif +#ifdef CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD +__CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD, ::size_t) +#endif +#ifdef CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD +__CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD, ::size_t) +#endif #ifdef CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV __CL_DECLARE_PARAM_TRAITS(cl_device_info, CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV, cl_uint) diff --git a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl_ext.h b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl_ext.h index 4f215913ca..5535f5b5d9 100644 --- a/projects/clr/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl_ext.h +++ b/projects/clr/opencl/api/opencl/khronos/headers/opencl2.2/CL/cl_ext.h @@ -207,6 +207,8 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clTerminateContextKHR_fn)(cl_context / #define CL_DEVICE_GFXIP_MAJOR_AMD 0x404A #define CL_DEVICE_GFXIP_MINOR_AMD 0x404B #define CL_DEVICE_AVAILABLE_ASYNC_QUEUES_AMD 0x404C +#define CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD 0x4030 +#define CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD 0x4031 typedef union {