KhronosGroup / KhronosGroup/OpenCL-Docs
Extension Dependencies on Specific OpenCL Versions
- Dominant language
- Python
- Stars
- 420
- Forks
- 131
- Avg merge
- 5d 13h
- Merged PRs (30d)
- 11
Description
The current OpenCL extension spec requires specific OpenCL versions for several extensions:
1. The base-level `cl_khr_semaphore` extension and related external semaphore extensions requires OpenCL 1.2.
2. The `cl_khr_command_buffer` extension requires OpenCL 1.2.
3. The `cl_khr_subgroup_rotate` extension requires OpenCL 2.0.
* Note: none of the other "extended subgroup extensions" requires OpenCL 2.0.
5. The `cl_khr_work_group_uniform_arithmetic` extension requires OpenCL 2.0.
6. Several extensions explicitly call out a requirement on OpenCL 1.0.
Questions are:
* Presumably these extensions require the stated OpenCL version **or newer**?
* For the OpenCL versions greater than 1.0 are these OpenCL versions actually required? If so, why? Should the reason be documented in the OpenCL extension spec?
* Is it helpful to describe a requirement on OpenCL 1.0? Or, should this be the default if no other OpenCL version is required?
For completeness, these extensions also have a dependency on a specific OpenCL version, but they also describe the reason why the OpenCL version is required:
1. `cl_khr_external_memory` and the related extensions require OpenCL 3.0 because they require specifying buffer and image creation properties.
Contributor guide
Research direction
Review the extension specifications for cl_khr_semaphore, cl_khr_command_buffer, cl_khr_subgroup_rotate, and cl_khr_work_group_uniform_arithmetic, along with the extensions that state OpenCL 1.0 dependencies. Determine whether each version is a minimum and whether its rationale is documented; done means the dependency wording and treatment of OpenCL 1.0 are resolved consistently across the specifications.
Written by the indexing model from the issue text.
Assessment
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100