summaryrefslogtreecommitdiff
path: root/src/cl_api_kernel.c
diff options
context:
space:
mode:
authorPan Xiuli <xiuli.pan@intel.com>2016-03-16 07:16:50 +0800
committerYang Rong <rong.r.yang@intel.com>2016-11-08 20:38:22 +0800
commitb8e07f6f6ff63e4d34e9d49f224ae123fbd043cb (patch)
treec8db4fcc8fa8a24eb2ccfef534f545c1d7e59654 /src/cl_api_kernel.c
parentd182f461268b415b500278bb5d788ae906d8df93 (diff)
Runtime: Add support for non uniform group size
Enqueue multiple times if the the size is not uniform, at most 2 times for 1D, 4times for 2D and 8 times for 3D. Using the workdim offset of walker in batch buffer to keep work groups in series. TODO: handle events for the flush between multiple enqueues Signed-off-by: Pan Xiuli <xiuli.pan@intel.com> Reviewed-by: Yang Rong <rong.r.yang@intel.com>
Diffstat (limited to 'src/cl_api_kernel.c')
-rw-r--r--src/cl_api_kernel.c13
1 files changed, 0 insertions, 13 deletions
diff --git a/src/cl_api_kernel.c b/src/cl_api_kernel.c
index 1fd687bb..70140b23 100644
--- a/src/cl_api_kernel.c
+++ b/src/cl_api_kernel.c
@@ -89,19 +89,6 @@ clEnqueueNDRangeKernel(cl_command_queue command_queue,
}
}
- /* Local sizes must be non-null and divide global sizes */
- if (local_work_size != NULL) {
- for (i = 0; i < work_dim; ++i) {
- if (UNLIKELY(local_work_size[i] == 0 || global_work_size[i] % local_work_size[i])) {
- err = CL_INVALID_WORK_GROUP_SIZE;
- break;
- }
- }
- if (err != CL_SUCCESS) {
- break;
- }
- }
-
/* Queue and kernel must share the same context */
assert(kernel->program);
if (command_queue->ctx != kernel->program->ctx) {