KhronosGroup / KhronosGroup/OpenCL-Headers

OpenCL-Header versioning

Open
#94 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
766
Forks
273
Avg merge
2d 2h
Merged PRs (30d)
3

Description

Currently OpenCL headers are versioned based on the OpenCL spec (1.2, 2.0, 2.2 etc)

Apart from the core and optional core features that we change only with OpenCL version, we often add types and APIs required by KHR extensions in some of the standard headers (e.g. clext.h). Sometimes, the extension might be written on top of 1.2 or 2.0.

Current versioning doesn't allow differentiating between the OpenCL headers before and after such changes. Having finer versioning may help recommend right version of headers users need to use and potentially clarify this dependency in the extension specs.

Filing this issue to discuss pros and cons of adding the finer versioning.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing how the current OpenCL spec-based header versions are represented and how KHR extension types and APIs are added to the standard headers. Compare the tradeoffs of finer versioning, and consider the issue complete when a versioning approach and its implications for extension dependencies are clearly documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
api
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.