KhronosGroup / KhronosGroup/OpenCL-CTS

Subgroup testing only uses infinity for cl_half in many cases

Open
#1,404 1 comment 1 reaction 0 assignees View on GitHub
Dominant language
C++
Stars
232
Forks
235
Avg merge
8d 7h
Merged PRs (30d)
18

Description

The subgroup tests only test with infinity in many cases for cl_half values (i.e. the only bit pattern used is 0x7c00). This compromises the validity of the testing in question. The affects the following tests listed below.

subgroup_functions_ext:
* sub_group_broadcast(half)

subgroup_functions_core:
* sub_group_broadcast(half)

subgroup_functions_non_uniform_vote:
* sub_group_non_uniform_all_equal(half) - use zero 50% of the time, and infinity 50% of the time

subgroup_functions_ballot:
* sub_group_non_uniform_broadcast(half)
* sub_group_broadcast_first(half)

subgroup_functions_shuffle:
* sub_group_shuffle(half)
* sub_group_shuffle_xor(half)

subgroup_functions_shuffle_relative:
* sub_group_shuffle_up(half)
* sub_group_shuffle_down(half)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the named subgroup tests: subgroup_functions_ext, subgroup_functions_core, subgroup_functions_non_uniform_vote, subgroup_functions_ballot, subgroup_functions_shuffle, and subgroup_functions_shuffle_relative. Inspect how cl_half values are selected, then update the affected cases so they test beyond the 0x7c00 infinity bit pattern, including the stated zero/infinity split where specified. Done means the listed half subgroup tests exercise varied values rather than only infinity.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
testing-qa
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.