Skip to content

Commit dbc5b7e

Browse files
author
Pekka Jääskeläinen
committed
BDA: Removed CL_MEM_DEVICE_SHARED_ADDRESS_EXT as unneeded.
Also made the enums globally unique.
1 parent 9b18682 commit dbc5b7e

3 files changed

Lines changed: 23 additions & 38 deletions

File tree

api/cl_ext_buffer_device_address.asciidoc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ include::{generated}/meta/{refprefix}cl_ext_buffer_device_address.txt[]
66
=== Other Extension Metadata
77

88
*Last Modified Date*::
9-
2024-12-06
9+
2024-12-12
1010
*IP Status*::
1111
No known IP claims.
1212
*Contributors*::
@@ -55,7 +55,6 @@ can allocate.
5555

5656
* {cl_mem_properties_TYPE}
5757
** {CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT}
58-
** {CL_MEM_DEVICE_SHARED_ADDRESS_EXT}
5958
* {cl_mem_info_TYPE}
6059
** {CL_MEM_DEVICE_ADDRESS_EXT}
6160
* {cl_kernel_exec_info_TYPE}
@@ -68,6 +67,8 @@ can allocate.
6867
[options="header"]
6968
|====
7069
| *Version* | *Date* | *Author* | *Changes*
70+
| 0.9.1 | 2024-12-12 | Pekka Jääskeläinen |
71+
Removed CL_MEM_DEVICE_SHARED_ADDRESS_EXT as unneeded.
7172
| 0.9.0 | 2024-12-06 | Pekka Jääskeläinen, Kevin Petit |
7273
Integrated to the main unified specification.
7374
Moved the functionality to clCreateBufferWithProperties,

api/opencl_runtime_layer.asciidoc

Lines changed: 6 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -617,15 +617,6 @@ include::{generated}/api/version-notes/CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT.asciido
617617
allocated buffers can be computed by adding the sub-buffer origin to the
618618
device-specific start address.
619619

620-
| {CL_MEM_DEVICE_SHARED_ADDRESS_EXT_anchor}
621-
622-
include::{generated}/api/version-notes/CL_MEM_DEVICE_SHARED_ADDRESS_EXT.asciidoc[]
623-
| {cl_bool_TYPE}
624-
| When set to CL_TRUE, the buffer has otherwise the same properties as
625-
when allocated using the {CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT_anchor} flag,
626-
but with an additional property that the buffer's address is the same across
627-
all the devices in the context.
628-
629620
endif::cl_ext_buffer_device_address[]
630621

631622
|====
@@ -697,12 +688,8 @@ ifdef::cl_khr_external_memory[]
697688
endif::cl_khr_external_memory[]
698689
ifdef::cl_ext_buffer_device_address[]
699690
* {CL_INVALID_DEVICE}
700-
** If _properties_ includes either {CL_MEM_DEVICE_SHARED_ADDRESS_EXT} or
701-
{CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT} and there is at least one device in
702-
the context that doesn't support such allocation.
703-
* {CL_INVALID_VALUE}
704-
** If _properties_ includes both {CL_MEM_DEVICE_SHARED_ADDRESS_EXT} and
705-
{CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT} at the same time.
691+
** If _properties_ includes {CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT} and there
692+
is at least one device in the context that doesn't support such allocation.
706693
endif::cl_ext_buffer_device_address[]
707694

708695
[[memory-flags-table]]
@@ -6513,9 +6500,7 @@ include::{generated}/api/version-notes/CL_MEM_DEVICE_ADDRESS_EXT.asciidoc[]
65136500
| If _memobj_ was created using {clCreateBufferWithProperties} with
65146501
the {CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT} property set to CL_TRUE,
65156502
returns a list of device addresses for the buffer, one for each
6516-
device in the context. If the buffer was allocated
6517-
with the {CL_MEM_DEVICE_SHARED_ADDRESS_EXT} property,
6518-
only one device address is returned.
6503+
device in the context.
65196504

65206505
endif::cl_ext_buffer_device_address[]
65216506

@@ -6537,8 +6522,7 @@ Otherwise, it returns one of the following errors:
65376522
ifdef::cl_ext_buffer_device_address[]
65386523
** Returned for the {CL_MEM_DEVICE_ADDRESS_EXT} query if
65396524
the {cl_ext_buffer_device_address_EXT} is not supported or if the
6540-
buffer was not allocated with neither {CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT} or
6541-
{CL_MEM_DEVICE_SHARED_ADDRESS_EXT}.
6525+
buffer was not allocated with {CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT}.
65426526
endif::cl_ext_buffer_device_address[]
65436527
* {CL_OUT_OF_RESOURCES} if there is a failure to allocate resources required
65446528
by the OpenCL implementation on the device.
@@ -10862,9 +10846,8 @@ include::{generated}/api/version-notes/clSetKernelArgDevicePointerEXT.asciidoc[]
1086210846
value is changed by a call to {clSetKernelArgDevicePointerEXT} for _kernel_.
1086310847
The device pointer can only be used for arguments that are declared to be a
1086410848
pointer to `global` memory allocated with {clCreateBufferWithProperties} with
10865-
either the {CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT} or {CL_MEM_DEVICE_SHARED_ADDRESS_EXT}
10866-
property. The pointer value specified as the argument value
10867-
can be the pointer to the beginning of the buffer or any offset into
10849+
the {CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT} property. The pointer value specified as
10850+
the argument value can be the pointer to the beginning of the buffer or any offset into
1086810851
the buffer region. The device pointer value must be naturally aligned according to
1086910852
the argument's type.
1087010853

xml/cl.xml

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -720,8 +720,6 @@ server's OpenCL/api-docs repository.
720720
<enum value="((cl_device_partition_property_ext)0 - 1)" name="CL_PARTITION_BY_NAMES_LIST_END_EXT"/>
721721
<enum value="-1" name="CL_PARTITION_BY_NAMES_LIST_END_INTEL"/>
722722
<enum value="0" name="CL_MEM_DEVICE_HANDLE_LIST_END_KHR"/>
723-
<enum value="1" name="CL_MEM_DEVICE_SHARED_ADDRESS_EXT"/>
724-
<enum value="2" name="CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT"/>
725723
<enum value="0" name="CL_SEMAPHORE_DEVICE_HANDLE_LIST_END_KHR"/>
726724
<enum value="0" name="CL_SEMAPHORE_EXPORT_HANDLE_TYPES_LIST_END_KHR"/>
727725
</enums>
@@ -914,7 +912,7 @@ server's OpenCL/api-docs repository.
914912
<enum bitpos="38" name="CL_MEM_RESERVED1_QCOM"/>
915913
<enum bitpos="39" name="CL_MEM_RESERVED2_QCOM"/>
916914
<enum bitpos="40" name="CL_MEM_RESERVED3_QCOM"/>
917-
<unused start="43" end="63"/>
915+
<unused start="41" end="63"/>
918916
</enums>
919917

920918
<enums name="cl_map_flags" vendor="Khronos" type="bitmask">
@@ -1633,8 +1631,7 @@ server's OpenCL/api-docs repository.
16331631
<enum value="0x1108" name="CL_MEM_OFFSET"/>
16341632
<enum value="0x1109" name="CL_MEM_USES_SVM_POINTER"/>
16351633
<enum value="0x110A" name="CL_MEM_PROPERTIES"/>
1636-
<enum value="0x110B" name="CL_MEM_DEVICE_ADDRESS_EXT"/>
1637-
<unused start="0x110D" end="0x110F" comment="Reserved for cl_mem_info"/>
1634+
<unused start="0x110B" end="0x110F" comment="Reserved for cl_mem_info"/>
16381635
<enum value="0x1110" name="CL_IMAGE_FORMAT"/>
16391636
<enum value="0x1111" name="CL_IMAGE_ELEMENT_SIZE"/>
16401637
<enum value="0x1112" name="CL_IMAGE_ROW_PITCH"/>
@@ -1727,8 +1724,7 @@ server's OpenCL/api-docs repository.
17271724
<enum value="0x11B8" name="CL_KERNEL_LOCAL_SIZE_FOR_SUB_GROUP_COUNT"/>
17281725
<enum value="0x11B9" name="CL_KERNEL_MAX_NUM_SUB_GROUPS"/>
17291726
<enum value="0x11BA" name="CL_KERNEL_COMPILE_NUM_SUB_GROUPS"/>
1730-
<enum value="0x11BB" name="CL_KERNEL_EXEC_INFO_DEVICE_PTRS_EXT"/>
1731-
<unused start="0x11BC" end="0x11CF" comment="Reserved for cl_kernel_info / cl_kernel_work_group_info / cl_kernel_exec_info / cl_kernel_sub_group_info"/>
1727+
<unused start="0x11BB" end="0x11CF" comment="Reserved for cl_kernel_info / cl_kernel_work_group_info / cl_kernel_exec_info / cl_kernel_sub_group_info"/>
17321728
<enum value="0x11D0" name="CL_EVENT_COMMAND_QUEUE"/>
17331729
<enum value="0x11D1" name="CL_EVENT_COMMAND_TYPE"/>
17341730
<enum value="0x11D2" name="CL_EVENT_REFERENCE_COUNT"/>
@@ -2320,6 +2316,12 @@ server's OpenCL/api-docs repository.
23202316
<unused start="0x42B0" end="0x4FFF"/>
23212317
</enums>
23222318

2319+
<enums start="0x5000" end="0x500F" name="enums.5000" comment="For cl_ext_buffer_device_address">
2320+
<enum value="0x5000" name="CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT"/>
2321+
<enum value="0x5001" name="CL_MEM_DEVICE_ADDRESS_EXT"/>
2322+
<enum value="0x5002" name="CL_KERNEL_EXEC_INFO_DEVICE_PTRS_EXT"/>
2323+
</enums>
2324+
23232325
<enums start="0x10000" end="0x10FFF" name="enums.10000" vendor="Khronos" comment="Experimental range for internal development only. Do not allocate.">
23242326
<!-- Khronos will never assign values in this range, and vendors
23252327
should never ship using values in this range. It is intended
@@ -3739,7 +3741,7 @@ server's OpenCL/api-docs repository.
37393741
<proto><type>cl_int</type> <name>clSetKernelArgDevicePointerEXT</name></proto>
37403742
<param><type>cl_kernel</type> <name>kernel</name></param>
37413743
<param><type>cl_uint</type> <name>arg_index</name></param>
3742-
<param>const <type>void</type>* <name>arg_value</name></param>
3744+
<param>const <type>cl_mem_device_address_ext</type>* <name>arg_value</name></param>
37433745
</command>
37443746
<command suffix="CL_API_SUFFIX__VERSION_2_0">
37453747
<proto><type>cl_int</type> <name>clSetKernelExecInfo</name></proto>
@@ -7202,12 +7204,14 @@ server's OpenCL/api-docs repository.
72027204
<command name="clSetContentSizeBufferPoCL"/>
72037205
</require>
72047206
</extension>
7205-
<extension name="cl_ext_buffer_device_address" revision="0.9.0" supported="opencl" depends="CL_VERSION_3_0" provisional="true">
7207+
<extension name="cl_ext_buffer_device_address" revision="0.9.1" supported="opencl" depends="CL_VERSION_3_0" provisional="true">
7208+
<require>
7209+
<type name="cl_mem_device_address_ext"/>
7210+
</require>
72067211
<require>
72077212
<command name="clSetKernelArgDevicePointerEXT"/>
72087213
</require>
72097214
<require comment="cl_mem_properties">
7210-
<enum name="CL_MEM_DEVICE_SHARED_ADDRESS_EXT"/>
72117215
<enum name="CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT"/>
72127216
</require>
72137217
<require comment="cl_mem_info">
@@ -7216,9 +7220,6 @@ server's OpenCL/api-docs repository.
72167220
<require comment="cl_kernel_exec_info">
72177221
<enum name="CL_KERNEL_EXEC_INFO_DEVICE_PTRS_EXT"/>
72187222
</require>
7219-
<require>
7220-
<type name="cl_mem_device_address_ext"/>
7221-
</require>
72227223
</extension>
72237224
<extension name="cl_khr_command_buffer" revision="0.9.7" supported="opencl" depends="CL_VERSION_1_2" ratified="opencl" provisional="true">
72247225
<require>

0 commit comments

Comments
 (0)