Skip to content

Commit f05cec6

Browse files
Maetveisbashbaug
andauthored
Add vec16 types for short types (#1402)
* Add vec16 types for short types Match cl_intel_subgroups_short version 1.1 and add vec16 types for block reads and writes for shorts. * Version refers to short extension, update version * update version and copyright date --------- Co-authored-by: Ben Ashbaugh <[email protected]>
1 parent a8ad0ad commit f05cec6

File tree

1 file changed

+27
-4
lines changed

1 file changed

+27
-4
lines changed

extensions/cl_intel_subgroup_local_block_io.asciidoc

Lines changed: 27 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Ben Ashbaugh, Intel
2222

2323
== Notice
2424

25-
Copyright (c) 2023 Intel Corporation. All rights reserved.
25+
Copyright (c) 2025 Intel Corporation. All rights reserved.
2626

2727
== Status
2828

@@ -31,7 +31,7 @@ Shipping
3131
== Version
3232

3333
Built On: {docdate} +
34-
Version: 1.0.0
34+
Version: 1.0.1
3535

3636
== Dependencies
3737

@@ -115,6 +115,12 @@ void intel_sub_group_block_write_us( __local ushort* p, ushort data )
115115
void intel_sub_group_block_write_us2( __local ushort* p, ushort2 data )
116116
void intel_sub_group_block_write_us4( __local ushort* p, ushort4 data )
117117
void intel_sub_group_block_write_us8( __local ushort* p, ushort8 data )
118+
119+
/* If cl_intel_subgroups_short version 1.1 or greater is supported: */
120+
121+
ushort16 intel_sub_group_block_read_us16( const __local ushort* p )
122+
123+
void intel_sub_group_block_write_us16( __local ushort* p, ushort16 data )
118124
----
119125

120126
If `cl_intel_subgroups_long` is supported, add variants of the `ulong` subgroup block read and write functions that support loading from and storing to pointers to the `+__local+` address space:
@@ -318,9 +324,17 @@ ushort4 intel_sub_group_block_read_us4(
318324
const __local ushort* p )
319325
ushort8 intel_sub_group_block_read_us8(
320326
const __local ushort* p )
327+
328+
/* If cl_intel_subgroups_short version 1.1 or greater is supported: */
329+
330+
ushort16 intel_sub_group_block_read_us16(
331+
const __global ushort* p )
332+
333+
ushort16 intel_sub_group_block_read_us16(
334+
const __local ushort* p )
321335
----
322336

323-
| Reads 1, 2, 4, or 8 ushorts of data for each work item in the subgroup from the specified pointer as a block operation...
337+
| Reads 1, 2, 4, or 8 (or 16, if `cl_intel_subgroups_short` version 1.1 or greater is supported) ushorts of data for each work item in the subgroup from the specified pointer as a block operation...
324338

325339
|[source,opencl_c]
326340
----
@@ -341,9 +355,17 @@ void intel_sub_group_block_write_us4(
341355
__local ushort* p, ushort4 data )
342356
void intel_sub_group_block_write_us8(
343357
__local ushort* p, ushort8 data )
358+
359+
/* If cl_intel_subgroups_short version 1.1 or greater is supported: */
360+
361+
void intel_sub_group_block_write_us16(
362+
__global ushort* p, ushort16 data )
363+
364+
void intel_sub_group_block_write_us16(
365+
__local ushort* p, ushort16 data )
344366
----
345367

346-
| Writes 1, 2, 4, or 8 ushorts of data for each work item in the subgroup to the specified pointer as a block operation...
368+
| Writes 1, 2, 4, or 8 (or 16, if `cl_intel_subgroups_short` version 1.1 or greater is supported) ushorts of data for each work item in the subgroup to the specified pointer as a block operation...
347369

348370
|==================================
349371

@@ -468,6 +490,7 @@ For consistency with `cl_intel_subgroups` we should include both the un-suffixed
468490
|========================================
469491
|Rev|Date|Author|Changes
470492
|1.0.0|2023-11-29|Ben Ashbaugh|*Initial revision for publication*
493+
|1.0.1|2025-07-01|Gergely Meszaros|Clarify vec16 type support for cl_intel_subgroups_short version 1.1
471494
|========================================
472495

473496
//************************************************************************

0 commit comments

Comments
 (0)