KhronosGroup / KhronosGroup/KSCAF_DocRequirements
Parallel execution of threads: specific, verifiable requirements shall replace "threadsafe"
- Dominant language
- CSS
- Stars
- 4
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
API specification usually has requirement that the API should be “threadsafe” without defining or discussing this term. Instead of this requirement, there should be a set of specific and verifiable requirements related to using specific API data structures and functions in parallel threads. For example, there could be requirement that when ‘eglMakeCurrent’ is called and passed the same parameter values approximately simultaneously by two threads, then the later call will always fail, regardless of shortness of the time interval between the two calls. This kind of requirement would express absence of race conditions. An example of a more detailed discussion of some functions in parallel usage can be found in section 2.6, “Threading Behavior,” of Vulkan 1.1.78 - A Specification.
For reference, general issue "Parallel execution of thread" is defined as issue #29.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with issue #29 and the referenced Vulkan 1.1.78 specification, section 2.6, “Threading Behavior,” then review the API operations discussed here, including eglMakeCurrent. Done means replacing the generic “threadsafe” requirement with specific, verifiable parallel-use requirements for the relevant data structures and functions.
Written by the indexing model from the issue text.
Assessment
- Domain
- api, documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100