Skip to content

Commit

Permalink
cl_ext_buffer_device_address to 1.0.0
Browse files Browse the repository at this point in the history
The only content addition since the previous version is

"If the device supports SVM and {clCreateBufferWithProperties} is
 called with a pointer returned by {clSVMAlloc} as its _host_ptr_
 argument, and {CL_MEM_USE_HOST_PTR} is set in its _flags_ argument,
 the device-side address is guaranteed to match the _host_ptr."
  • Loading branch information
pjaaskel committed Jan 15, 2025
1 parent 376baee commit 6e8cbe4
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 37 deletions.
38 changes: 4 additions & 34 deletions api/cl_ext_buffer_device_address.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,15 @@ include::{generated}/meta/{refprefix}cl_ext_buffer_device_address.txt[]
=== Other Extension Metadata

*Last Modified Date*::
2024-12-12
2025-01-15
*IP Status*::
No known IP claims.
*Contributors*::
- Pekka Jääskeläinen, Intel +
- Karol Herbst, Red Hat +
- Henry Linjamäki, Intel +
- Kevin Petit, Arm +
- Ben Ashbaugh, Intel +

=== Description

Expand Down Expand Up @@ -62,36 +63,5 @@ can allocate.

=== Version History

[cols="5,15,15,70"]
[grid="rows"]
[options="header"]
|====
| *Version* | *Date* | *Author* | *Changes*
| 0.9.1 | 2024-12-12 | Pekka Jääskeläinen |
Removed CL_MEM_DEVICE_SHARED_ADDRESS_EXT as unneeded.
| 0.9.0 | 2024-12-06 | Pekka Jääskeläinen, Kevin Petit |
Integrated to the main unified specification.
Moved the functionality to clCreateBufferWithProperties,
thus requiring 3.0+. Single memobj query for fetching the
address(es). Also other smaller improvements pointed by Kevin.
Candidate for final 1.0.0.
| 0.3.0 | 2024-09-24 | Pekka Jääskeläinen, Karol Herbst |
Made the allocation flags independent from each other and
renamed them to CL_MEM_DEVICE_SHARED_ADDRESS_EXT and
CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT. The first one guarantees the
same address across all devices in the context, whereas the latter
allows per-device addresses.
| 0.2.0 | 2024-09-09 | Pekka Jääskeläinen, Karol Herbst |
Changed the CL_MEM_DEVICE_ADDRESS_EXT wording for multi-device
cases "all", not "any", covering a case where not all devices
can ensure the same address across the context. In that case
CL_INVALID_VALUE can be returned. Defined sub-buffer address
computation to be 'base_addr + origin'. Added error conditions
for clSetKernelExecInfo when the device doesn't support
device pointers.
| 0.1.0 | 2024-05-07 | Pekka Jääskeläinen | First draft text for feedback.
This version describes the first API version that was prototyped
in PoCL and RustiCL using temporary placeholder flag/enum values.
The PoCL implementation and initial discussion on the extension
can be found https://github.com/pocl/pocl/pull/1441[in this PR].
|====
* Revision 1.0.0, 2025-01-15
** Initial version.
5 changes: 5 additions & 0 deletions api/opencl_runtime_layer.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -617,6 +617,11 @@ include::{generated}/api/version-notes/CL_MEM_DEVICE_PRIVATE_ADDRESS_EXT.asciido
allocated buffers can be computed by adding the sub-buffer origin to the
device-specific start address.

If the device supports SVM and {clCreateBufferWithProperties} is called with a pointer
returned by {clSVMAlloc} as its _host_ptr_ argument, and {CL_MEM_USE_HOST_PTR} is
set in its _flags_ argument, the device-side address is guaranteed to match
the _host_ptr.

endif::cl_ext_buffer_device_address[]

|====
Expand Down
2 changes: 0 additions & 2 deletions extensions/extensions.txt
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,6 @@ include::cl_ext_float_atomics.asciidoc[]
include::cl_ext_image_from_buffer.asciidoc[]
<<<
include::cl_ext_image_raw10_raw12.asciidoc[]
<<<
include::cl_ext_buffer_device_address.asciidoc[]

// Vendor Extensions
:leveloffset: 0
Expand Down
2 changes: 1 addition & 1 deletion xml/cl.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7204,7 +7204,7 @@ server's OpenCL/api-docs repository.
<command name="clSetContentSizeBufferPoCL"/>
</require>
</extension>
<extension name="cl_ext_buffer_device_address" revision="0.9.1" supported="opencl" depends="CL_VERSION_3_0" provisional="true">
<extension name="cl_ext_buffer_device_address" revision="1.0.0" supported="opencl" depends="CL_VERSION_3_0">
<require>
<type name="cl_mem_device_address_ext"/>
</require>
Expand Down

0 comments on commit 6e8cbe4

Please sign in to comment.