Skip to content

Commit 3049867

Browse files
author
Steffen Larsen
committed
[SYCL][PI][CUDA] Kernel group private memory size
Signed-off-by: Steffen Larsen <[email protected]>
1 parent aff4fa9 commit 3049867

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

sycl/include/CL/sycl/detail/pi.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,8 @@ typedef enum {
263263
PI_KERNEL_COMPILE_GROUP_INFO_SIZE = CL_KERNEL_COMPILE_WORK_GROUP_SIZE,
264264
PI_KERNEL_LOCAL_MEM_SIZE = CL_KERNEL_LOCAL_MEM_SIZE,
265265
PI_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE =
266-
CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE
266+
CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE,
267+
PI_KERNEL_PRIVATE_MEM_SIZE = CL_KERNEL_PRIVATE_MEM_SIZE
267268
} _pi_kernel_group_info;
268269

269270
typedef enum {

sycl/plugins/cuda/pi_cuda.cpp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2166,6 +2166,15 @@ pi_result cuda_piKernelGetGroupInfo(pi_kernel kernel, pi_device device,
21662166
return getInfo(param_value_size, param_value, param_value_size_ret,
21672167
static_cast<size_t>(warpSize));
21682168
}
2169+
case PI_KERNEL_PRIVATE_MEM_SIZE: {
2170+
// OpenCL PRIVATE == CUDA LOCAL
2171+
int bytes = 0;
2172+
cl::sycl::detail::pi::assertion(
2173+
cuFuncGetAttribute(&bytes, CU_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES,
2174+
kernel->get()) == CUDA_SUCCESS);
2175+
return getInfo(param_value_size, param_value, param_value_size_ret,
2176+
pi_uint64(bytes));
2177+
}
21692178
default:
21702179
PI_HANDLE_UNKNOWN_PARAM_NAME(param_name);
21712180
}

0 commit comments

Comments
 (0)