subgroups / subgroup_functions_clustered_reduce PASS

Test metadata

Name subgroup_functions_clustered_reduce
Category subgroups
Suite Khronos OpenCL CTS
Suite version 80a4a833
Executable path /test_conformance/subgroups/bin/test_subgroups
Arguments subgroup_functions_clustered_reduce

Run metadata

Parent job Job 113
Revision 2ca51d43f10cf99… / phab-diff-500842: [SPIRV] fix several issues in builds with expe…
Driver version NEO 22.34.24023; IGC 1.0.11702.1
Date run 03/01/2023
Duration 0 minutes
Status PASS

Runner output

Stdout from the runner of the corresponding OpenCL CTS test:

Initializing random seed to 0.
Requesting Default device based on command line for platform index 0 and device index 0
Compute Device Name = Intel(R) UHD Graphics 630 [0x3e98], Compute Device Vendor = Intel(R) Corporation, Compute Device Version = OpenCL 3.0 NEO , CL C Version = OpenCL C 1.2
Device latest conformance version passed: v2022-04-22-00
Supports single precision denormals: YES
sizeof( void*) = 8 (host)
sizeof( void*) = 8 (device)
subgroup_functions_clustered_reduce...
sub_group_clustered_reduce_add(int, 4 bytes) ...
sub_group_clustered_reduce_add(int, 4 bytes) ... passed
sub_group_clustered_reduce_max(int, 4 bytes) ...
sub_group_clustered_reduce_max(int, 4 bytes) ... passed
sub_group_clustered_reduce_min(int, 4 bytes) ...
sub_group_clustered_reduce_min(int, 4 bytes) ... passed
sub_group_clustered_reduce_mul(int, 4 bytes) ...
sub_group_clustered_reduce_mul(int, 4 bytes) ... passed
sub_group_clustered_reduce_add(uint, 4 bytes) ...
sub_group_clustered_reduce_add(uint, 4 bytes) ... passed
sub_group_clustered_reduce_max(uint, 4 bytes) ...
sub_group_clustered_reduce_max(uint, 4 bytes) ... passed
sub_group_clustered_reduce_min(uint, 4 bytes) ...
sub_group_clustered_reduce_min(uint, 4 bytes) ... passed
sub_group_clustered_reduce_mul(uint, 4 bytes) ...
sub_group_clustered_reduce_mul(uint, 4 bytes) ... passed
sub_group_clustered_reduce_add(long, 8 bytes) ...
sub_group_clustered_reduce_add(long, 8 bytes) ... passed
sub_group_clustered_reduce_max(long, 8 bytes) ...
sub_group_clustered_reduce_max(long, 8 bytes) ... passed
sub_group_clustered_reduce_min(long, 8 bytes) ...
sub_group_clustered_reduce_min(long, 8 bytes) ... passed
sub_group_clustered_reduce_mul(long, 8 bytes) ...
sub_group_clustered_reduce_mul(long, 8 bytes) ... passed
sub_group_clustered_reduce_add(ulong, 8 bytes) ...
sub_group_clustered_reduce_add(ulong, 8 bytes) ... passed
sub_group_clustered_reduce_max(ulong, 8 bytes) ...
sub_group_clustered_reduce_max(ulong, 8 bytes) ... passed
sub_group_clustered_reduce_min(ulong, 8 bytes) ...
sub_group_clustered_reduce_min(ulong, 8 bytes) ... passed
sub_group_clustered_reduce_mul(ulong, 8 bytes) ...
sub_group_clustered_reduce_mul(ulong, 8 bytes) ... passed
sub_group_clustered_reduce_add(short, 2 bytes) ...
sub_group_clustered_reduce_add(short, 2 bytes) ... passed
sub_group_clustered_reduce_max(short, 2 bytes) ...
sub_group_clustered_reduce_max(short, 2 bytes) ... passed
sub_group_clustered_reduce_min(short, 2 bytes) ...
sub_group_clustered_reduce_min(short, 2 bytes) ... passed
sub_group_clustered_reduce_mul(short, 2 bytes) ...
sub_group_clustered_reduce_mul(short, 2 bytes) ... passed
sub_group_clustered_reduce_add(ushort, 2 bytes) ...
sub_group_clustered_reduce_add(ushort, 2 bytes) ... passed
sub_group_clustered_reduce_max(ushort, 2 bytes) ...
sub_group_clustered_reduce_max(ushort, 2 bytes) ... passed
sub_group_clustered_reduce_min(ushort, 2 bytes) ...
sub_group_clustered_reduce_min(ushort, 2 bytes) ... passed
sub_group_clustered_reduce_mul(ushort, 2 bytes) ...
sub_group_clustered_reduce_mul(ushort, 2 bytes) ... passed
sub_group_clustered_reduce_add(char, 1 bytes) ...
sub_group_clustered_reduce_add(char, 1 bytes) ... passed
sub_group_clustered_reduce_max(char, 1 bytes) ...
sub_group_clustered_reduce_max(char, 1 bytes) ... passed
sub_group_clustered_reduce_min(char, 1 bytes) ...
sub_group_clustered_reduce_min(char, 1 bytes) ... passed
sub_group_clustered_reduce_mul(char, 1 bytes) ...
sub_group_clustered_reduce_mul(char, 1 bytes) ... passed
sub_group_clustered_reduce_add(uchar, 1 bytes) ...
sub_group_clustered_reduce_add(uchar, 1 bytes) ... passed
sub_group_clustered_reduce_max(uchar, 1 bytes) ...
sub_group_clustered_reduce_max(uchar, 1 bytes) ... passed
sub_group_clustered_reduce_min(uchar, 1 bytes) ...
sub_group_clustered_reduce_min(uchar, 1 bytes) ... passed
sub_group_clustered_reduce_mul(uchar, 1 bytes) ...
sub_group_clustered_reduce_mul(uchar, 1 bytes) ... passed
sub_group_clustered_reduce_add(float, 4 bytes) ...
sub_group_clustered_reduce_add(float, 4 bytes) ... passed
sub_group_clustered_reduce_max(float, 4 bytes) ...
sub_group_clustered_reduce_max(float, 4 bytes) ... passed
sub_group_clustered_reduce_min(float, 4 bytes) ...
sub_group_clustered_reduce_min(float, 4 bytes) ... passed
sub_group_clustered_reduce_mul(float, 4 bytes) ...
sub_group_clustered_reduce_mul(float, 4 bytes) ... passed
sub_group_clustered_reduce_add(double, 8 bytes) ...
sub_group_clustered_reduce_add(double, 8 bytes) ... passed
sub_group_clustered_reduce_max(double, 8 bytes) ...
sub_group_clustered_reduce_max(double, 8 bytes) ... passed
sub_group_clustered_reduce_min(double, 8 bytes) ...
sub_group_clustered_reduce_min(double, 8 bytes) ... passed
sub_group_clustered_reduce_mul(double, 8 bytes) ...
sub_group_clustered_reduce_mul(double, 8 bytes) ... passed
sub_group_clustered_reduce_add(half, 2 bytes) ...
sub_group_clustered_reduce_add(half, 2 bytes) ... passed
sub_group_clustered_reduce_max(half, 2 bytes) ...
sub_group_clustered_reduce_max(half, 2 bytes) ... passed
sub_group_clustered_reduce_min(half, 2 bytes) ...
sub_group_clustered_reduce_min(half, 2 bytes) ... passed
sub_group_clustered_reduce_mul(half, 2 bytes) ...
sub_group_clustered_reduce_mul(half, 2 bytes) ... passed
sub_group_clustered_reduce_and(int, 4 bytes) ...
sub_group_clustered_reduce_and(int, 4 bytes) ... passed
sub_group_clustered_reduce_or(int, 4 bytes) ...
sub_group_clustered_reduce_or(int, 4 bytes) ... passed
sub_group_clustered_reduce_xor(int, 4 bytes) ...
sub_group_clustered_reduce_xor(int, 4 bytes) ... passed
sub_group_clustered_reduce_and(uint, 4 bytes) ...
sub_group_clustered_reduce_and(uint, 4 bytes) ... passed
sub_group_clustered_reduce_or(uint, 4 bytes) ...
sub_group_clustered_reduce_or(uint, 4 bytes) ... passed
sub_group_clustered_reduce_xor(uint, 4 bytes) ...
sub_group_clustered_reduce_xor(uint, 4 bytes) ... passed
sub_group_clustered_reduce_and(long, 8 bytes) ...
sub_group_clustered_reduce_and(long, 8 bytes) ... passed
sub_group_clustered_reduce_or(long, 8 bytes) ...
sub_group_clustered_reduce_or(long, 8 bytes) ... passed
sub_group_clustered_reduce_xor(long, 8 bytes) ...
sub_group_clustered_reduce_xor(long, 8 bytes) ... passed
sub_group_clustered_reduce_and(ulong, 8 bytes) ...
sub_group_clustered_reduce_and(ulong, 8 bytes) ... passed
sub_group_clustered_reduce_or(ulong, 8 bytes) ...
sub_group_clustered_reduce_or(ulong, 8 bytes) ... passed
sub_group_clustered_reduce_xor(ulong, 8 bytes) ...
sub_group_clustered_reduce_xor(ulong, 8 bytes) ... passed
sub_group_clustered_reduce_and(short, 2 bytes) ...
sub_group_clustered_reduce_and(short, 2 bytes) ... passed
sub_group_clustered_reduce_or(short, 2 bytes) ...
sub_group_clustered_reduce_or(short, 2 bytes) ... passed
sub_group_clustered_reduce_xor(short, 2 bytes) ...
sub_group_clustered_reduce_xor(short, 2 bytes) ... passed
sub_group_clustered_reduce_and(ushort, 2 bytes) ...
sub_group_clustered_reduce_and(ushort, 2 bytes) ... passed
sub_group_clustered_reduce_or(ushort, 2 bytes) ...
sub_group_clustered_reduce_or(ushort, 2 bytes) ... passed
sub_group_clustered_reduce_xor(ushort, 2 bytes) ...
sub_group_clustered_reduce_xor(ushort, 2 bytes) ... passed
sub_group_clustered_reduce_and(char, 1 bytes) ...
sub_group_clustered_reduce_and(char, 1 bytes) ... passed
sub_group_clustered_reduce_or(char, 1 bytes) ...
sub_group_clustered_reduce_or(char, 1 bytes) ... passed
sub_group_clustered_reduce_xor(char, 1 bytes) ...
sub_group_clustered_reduce_xor(char, 1 bytes) ... passed
sub_group_clustered_reduce_and(uchar, 1 bytes) ...
sub_group_clustered_reduce_and(uchar, 1 bytes) ... passed
sub_group_clustered_reduce_or(uchar, 1 bytes) ...
sub_group_clustered_reduce_or(uchar, 1 bytes) ... passed
sub_group_clustered_reduce_xor(uchar, 1 bytes) ...
sub_group_clustered_reduce_xor(uchar, 1 bytes) ... passed
sub_group_clustered_reduce_logical_and(int, 4 bytes) ...
sub_group_clustered_reduce_logical_and(int, 4 bytes) ... passed
sub_group_clustered_reduce_logical_or(int, 4 bytes) ...
sub_group_clustered_reduce_logical_or(int, 4 bytes) ... passed
sub_group_clustered_reduce_logical_xor(int, 4 bytes) ...
sub_group_clustered_reduce_logical_xor(int, 4 bytes) ... passed
subgroup_functions_clustered_reduce passed
PASSED sub-test.
PASSED test.

Stderr from the runner of the corresponding OpenCL CTS test:

Runner dumps

The files below were generated by the Intel Graphics Compiler after setting the IGC_ShaderDumpEnable=1 variable. OCL_asmX_before_spirv_backend.spv is the input binary SPIR-V generated by the IGC's OpenCL frontend, from which the SPIRV-LLVM-Translator generates OCL_asmX_before_spirv_backend.ll module which is passed to the SPIR-V backend. The backend outputs OCL_asmX_after_spirv_backend.spv SPIR-V binary which returns to IGC to be translated to LLVM module OCL_asmX_after_spirv_backend.ll for further compilation.