KhronosGroup / KhronosGroup/OpenCL-CTS

add a helper function to get the maximum work-group size

Open
#2,586 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
232
Forks
235
Avg merge
8d 7h
Merged PRs (30d)
18

Description

See: https://github.com/KhronosGroup/OpenCL-CTS/pull/2578#pullrequestreview-3480072911

We should consider adding a helper function to the harness to get the maximum 1D work-group size at the very least. The maximum 1D work-group size would take into account [CL_DEVICE_MAX_WORK_GROUP_SIZE](https://registry.khronos.org/OpenCL/specs/3.0-unified/html/OpenCL_API.html#CL_DEVICE_MAX_WORK_GROUP_SIZE), [CL_DEVICE_MAX_WORK_ITEM_SIZES](https://registry.khronos.org/OpenCL/specs/3.0-unified/html/OpenCL_API.html#CL_DEVICE_MAX_WORK_ITEM_SIZES), and possibly [CL_KERNEL_WORK_GROUP_SIZE](https://registry.khronos.org/OpenCL/specs/3.0-unified/html/OpenCL_API.html#CL_KERNEL_WORK_GROUP_SIZE) when a kernel object is known.

We could consider adding a helper function for 2D and 3D work-group sizes, also, but I'm less sure how this would work.

Once we have added the new harness function, we should evaluate places where we are currently querying either CL_DEVICE_MAX_WORK_GROUP_SIZE, CL_DEVICE_MAX_WORK_ITEM_SIZES, and CL_KERNEL_WORK_GROUP_SIZE, and see if it would be more appropriate to use the helper function instead.

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue names no files, tests, or entry points. Start by locating the harness code and current queries for CL_DEVICE_MAX_WORK_GROUP_SIZE, CL_DEVICE_MAX_WORK_ITEM_SIZES, and CL_KERNEL_WORK_GROUP_SIZE, then review the linked pull-request discussion. Done means a helper for at least 1D maximum work-group size is added and appropriate existing queries are evaluated for replacement.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.