Skip to content

Commit 735516b

Browse files
committed
Merge branch 'main' into error-code-consistency
2 parents 26a8d7c + 4ae5ab5 commit 735516b

38 files changed

Lines changed: 342 additions & 257 deletions

OpenCL_C.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6624,7 +6624,7 @@ ifdef::cl_khr_fp16[half *length*(gentypeh _p_)]
66246624
ifdef::cl_khr_fp16[gentypeh *normalize*(gentypeh _p_)]
66256625
| Returns a vector in the same direction as _p_ but with a length of 1.
66266626
| |
6627-
| float *fast_distance*(float _p0_, float__n__ _p1_)
6627+
| float *fast_distance*(float__n__ _p0_, float__n__ _p1_)
66286628
| Returns *fast_length*(_p0_ - _p1_).
66296629
| float *fast_length*(float__n__ _p_)
66306630
| Returns the length of vector _p_ computed as:
@@ -16288,7 +16288,7 @@ is the infinitely precise result.
1628816288
| *sinpi* | {leq} 4 ulp
1628916289
| *smoothstep* | Implementation-defined
1629016290
| *step* | 0 ulp
16291-
| *fsqrt* | Correctly rounded
16291+
| *sqrt* | Correctly rounded
1629216292
| *tan* | {leq} 5 ulp
1629316293
| *tanh* | {leq} 5 ulp
1629416294
| *tanpi* | {leq} 6 ulp
@@ -16438,7 +16438,7 @@ is the infinitely precise result.
1643816438
| *sinh* | \<= 2 ulp | \<= 3 ulp
1643916439
| *sinpi* | \<= 2 ulp | \<= 2 ulp
1644016440
| *smoothstep* | Implementation-defined | Implementation-defined
16441-
| *sqrt* | Correctly rounded | \<= 1 ulp
16441+
| *sqrt* | \<= 1.5 ulp | \<= 1.5 ulp
1644216442
| *step* | 0 ulp | 0 ulp
1644316443
| *tan* | \<= 2 ulp | \<= 3 ulp
1644416444
| *tanh* | \<= 2 ulp | \<= 3 ulp

api/appendix_e.asciidoc

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -459,7 +459,7 @@ conformance process:
459459

460460
== Summary of Changes from OpenCL 3.0
461461

462-
The first non-provisional version of the OpenCL 3.0 specifications was *v3.0.5*.
462+
The first non-experimental version of the OpenCL 3.0 specifications was *v3.0.5*.
463463

464464
Changes from *v3.0.5*:
465465

@@ -502,17 +502,17 @@ Changes from *v3.0.8*:
502502
* Clarified the behavior of ballot operations for remainder sub-groups.
503503
* Added new extensions:
504504
** {cl_khr_integer_dot_product_EXT} (version 2)
505-
** {cl_khr_semaphore_EXT} (provisional)
506-
** {cl_khr_external_semaphore_EXT} (provisional)
507-
** `cl_khr_external_semaphore_dx_fence` (provisional)
508-
** {cl_khr_external_semaphore_opaque_fd_EXT} (provisional)
509-
** {cl_khr_external_semaphore_sync_fd_EXT} (provisional)
510-
** {cl_khr_external_semaphore_win32_EXT} (provisional)
511-
** {cl_khr_external_memory_EXT} (provisional)
512-
** {cl_khr_external_memory_dma_buf_EXT} (provisional)
513-
** `cl_khr_external_memory_dx` (provisional)
514-
** {cl_khr_external_memory_opaque_fd_EXT} (provisional)
515-
** {cl_khr_external_memory_win32_EXT} (provisional)
505+
** {cl_khr_semaphore_EXT} (experimental)
506+
** {cl_khr_external_semaphore_EXT} (experimental)
507+
** `cl_khr_external_semaphore_dx_fence` (experimental)
508+
** {cl_khr_external_semaphore_opaque_fd_EXT} (experimental)
509+
** {cl_khr_external_semaphore_sync_fd_EXT} (experimental)
510+
** {cl_khr_external_semaphore_win32_EXT} (experimental)
511+
** {cl_khr_external_memory_EXT} (experimental)
512+
** {cl_khr_external_memory_dma_buf_EXT} (experimental)
513+
** `cl_khr_external_memory_dx` (experimental)
514+
** {cl_khr_external_memory_opaque_fd_EXT} (experimental)
515+
** {cl_khr_external_memory_win32_EXT} (experimental)
516516

517517
Changes from *v3.0.9*:
518518

@@ -524,7 +524,7 @@ Changes from *v3.0.9*:
524524
** {cl_khr_async_work_group_copy_fence_EXT} (final)
525525
** {cl_khr_extended_async_copies_EXT} (final)
526526
** {cl_khr_expect_assume_EXT}
527-
** {cl_khr_command_buffer_EXT} (provisional)
527+
** {cl_khr_command_buffer_EXT} (experimental)
528528

529529
Changes from *v3.0.10*:
530530

@@ -549,7 +549,7 @@ Changes from *v3.0.11*:
549549
* Clarified {cl_khr_command_buffer_EXT} interactions with other extensions.
550550
* Specified error behavior when a command buffer is finalized multiple times.
551551
* Added new extension:
552-
** {cl_khr_command_buffer_mutable_dispatch_EXT} (provisional)
552+
** {cl_khr_command_buffer_mutable_dispatch_EXT} (experimental)
553553

554554
Changes from *v3.0.12*:
555555

@@ -568,7 +568,7 @@ Changes from *v3.0.13*:
568568
* Updated the semaphore wait and signal rules for binary semaphores in {cl_khr_semaphore_EXT}, see {khronos-opencl-pr}/882[#882].
569569
* Removed redundant error conditions from {cl_khr_external_semaphore_EXT} and {cl_khr_external_memory_EXT}, see {khronos-opencl-pr}/903[#903] and {khronos-opencl-pr}/904[#904].
570570
* Added new extension:
571-
** {cl_khr_command_buffer_multi_device_EXT} (provisional)
571+
** {cl_khr_command_buffer_multi_device_EXT} (experimental)
572572

573573
Changes from *v3.0.14*:
574574

@@ -578,22 +578,22 @@ Changes from *v3.0.14*:
578578
* Clarified that {clSetCommandQueueProperty} is only required for OpenCL 1.0 devices and may return an error otherwise, see {khronos-opencl-pr}/980[#980].
579579
* Clarified that the application must ensure the free function passed to {clEnqueueSVMFree} is thread safe, see {khronos-opencl-pr}/1016[#1016].
580580
* Clarified that the application must ensure the user function passed to {clEnqueueNativeKernel} is thread safe, see {khronos-opencl-pr}/1026[#1026].
581-
* {cl_khr_command_buffer_EXT} (provisional):
581+
* {cl_khr_command_buffer_EXT} (experimental):
582582
** Removed the "invalid" command buffer state, see {khronos-opencl-pr}/885[#885].
583583
** Added support for recording SVM memory copies and memory fills in a command buffer, see {khronos-opencl-pr}/915[#915].
584-
* {cl_khr_command_buffer_multi_device_EXT} (provisional):
584+
* {cl_khr_command_buffer_multi_device_EXT} (experimental):
585585
** Clarified that the sync devices query should only return root devices, see {khronos-opencl-pr}/925[#925].
586-
* {cl_khr_external_memory_EXT} (provisional):
586+
* {cl_khr_external_memory_EXT} (experimental):
587587
** Disallowed specifying a device handle list without also specifying an external memory handle, see {khronos-opencl-pr}/922[#922].
588588
** Added a query to determine the handle types an implementation will assume have a linear memory layout, see {khronos-opencl-pr}/940[#940].
589589
** Added an external memory-specific device handle list enum, see {khronos-opencl-pr}/956[#956].
590590
** Clarified that implementations may acquire information about an image from an external memory handle when the image is created, see {khronos-opencl-pr}/970[#970].
591-
* {cl_khr_external_semaphore_EXT} (provisional):
591+
* {cl_khr_external_semaphore_EXT} (experimental):
592592
** Added the ability to re-import "sync fd" handles into an existing semaphore, see {khronos-opencl-pr}/939[#939].
593593
** Clarified that a semaphore may only export one handle type, and that a semaphore created from an external handle cannot also export a handle, see {khronos-opencl-pr}/975[#975].
594594
** Clarified that {cl_khr_external_semaphore_EXT} requires support for {cl_khr_semaphore_EXT}, see {khronos-opencl-pr}/976[#976].
595595
** Added a query to determine if a semaphore may export an external handle, see {khronos-opencl-pr}/997[#997].
596-
* {cl_khr_semaphore_EXT} (provisional):
596+
* {cl_khr_semaphore_EXT} (experimental):
597597
** Added an semaphore-specific device handle list enum, see {khronos-opencl-pr}/956[#956].
598598
** Restricted semaphores to a single associated device, see {khronos-opencl-pr}/996[#996].
599599
* {cl_khr_subgroup_rotate_EXT}:
@@ -607,11 +607,11 @@ Changes from *v3.0.15*:
607607
* Strengthened requirements for the {CL_DEVICE_TYPE} query, see {khronos-opencl-pr}/1069[#1069].
608608
* Clarified {clSetEventCallback} behavior for command errors, see {khronos-opencl-pr}/1071[#1071].
609609
* Moved footnote text for {CL_KERNEL_ARG_TYPE_QUALIFIER} into the main spec, see {khronos-opencl-pr}/1097[#1097].
610-
* {cl_khr_command_buffer_mutable_dispatch_EXT} (provisional):
610+
* {cl_khr_command_buffer_mutable_dispatch_EXT} (experimental):
611611
** Added {CL_MUTABLE_DISPATCH_ASSERTS_KHR}, see {khronos-opencl-pr}/992[#992].
612612
* {cl_khr_semaphore_EXT}:
613613
** Removed a redundant error condition, see {khronos-opencl-pr}/1052[#1052]
614-
* The following extensions have been finalized and are no longer provisional:
614+
* The following extensions have been finalized and are no longer experimental:
615615
** {cl_khr_semaphore_EXT}
616616
** {cl_khr_external_semaphore_EXT}
617617
** {cl_khr_external_semaphore_opaque_fd_EXT}
@@ -621,7 +621,7 @@ Changes from *v3.0.15*:
621621
** {cl_khr_external_memory_opaque_fd_EXT}
622622
** {cl_khr_external_memory_win32_EXT}
623623
* Added new extension:
624-
** {cl_khr_kernel_clock_EXT} (provisional)
624+
** {cl_khr_kernel_clock_EXT} (experimental)
625625

626626
Changes from *v3.0.16*:
627627

@@ -637,11 +637,11 @@ Changes from *v3.0.16*:
637637
* Clarified the meaning of _num_mip_levels_ in {cl_image_desc_TYPE}, see {khronos-opencl-pr}/1255[#1255] and {khronos-opencl-pr}/1272[#1272].
638638
* Clarified that functionality will never be removed in minor OpenCL specification revisions, see {khronos-opencl-pr}/1265[#1265].
639639
* Clarified that the minimum value for {CL_DEVICE_HALF_FP_CONFIG} applies to all OpenCL versions, see {khronos-opencl-pr}/1273[#1273].
640-
* {cl_khr_command_buffer_EXT} (provisional):
640+
* {cl_khr_command_buffer_EXT} (experimental):
641641
** Added multi-device wording to {clCommandBarrierWithWaitListKHR}, see {khronos-opencl-pr}/1146[#1146].
642642
** Fixed {CL_INVALID_CONTEXT} command-buffer error definitions, see {khronos-opencl-pr}/1149[#1149].
643643
** Added a _properties_ parameter to all command-buffer commands to improve extensibility, see {khronos-opencl-pr}/1215[#1215].
644-
* {cl_khr_command_buffer_mutable_dispatch_EXT} (provisional):
644+
* {cl_khr_command_buffer_mutable_dispatch_EXT} (experimental):
645645
** Modified the extension to pass update configs as arrays, rather than linked lists, see {khronos-opencl-pr}/1045[#1045].
646646
* {cl_khr_external_memory_EXT}:
647647
** Clarified acquire and release behavior, see {khronos-opencl-pr}/1176[#1176].
@@ -659,9 +659,9 @@ Changes from *v3.0.16*:
659659
** Clarified which re-import properties are accepted by {clReImportSemaphoreSyncFdKHR}, see {khronos-opencl-pr}/1219[#1219].
660660
* {cl_khr_semaphore_EXT}:
661661
** Clarified external semaphore behavior, removing references to permanence, see {khronos-opencl-pr}/938[#938].
662-
* Removed provisional extensions due to lack of implementations and tests, see {khronos-opencl-pr}/1160[#1160].
663-
** `cl_khr_external_semaphore_dx_fence` (provisional)
664-
** `cl_khr_external_memory_dx` (provisional)
662+
* Removed experimental extensions due to lack of implementations and tests, see {khronos-opencl-pr}/1160[#1160].
663+
** `cl_khr_external_semaphore_dx_fence` (experimental)
664+
** `cl_khr_external_memory_dx` (experimental)
665665

666666
Changes from *v3.0.17*:
667667

@@ -676,12 +676,12 @@ Changes from *v3.0.17*:
676676
* Clarified an error condition for Direct3D 10 and Direct3D 11 3D textures, see {khronos-opencl-pr}/1342[#1342].
677677
* Clarified {CL_INVALID_IMAGE_SIZE} error conditions, see {khronos-opencl-pr}/1343[#1343].
678678
* Added a section describing document conventions, see {khronos-opencl-pr}/1347[#1347].
679-
* {cl_khr_command_buffer_EXT} (provisional):
679+
* {cl_khr_command_buffer_EXT} (experimental):
680680
** Refactored the command-buffer query for supported queue properties, see {khronos-opencl-pr}/850[#850].
681681
** Documented behavior when the command-buffer capacity is reached, see {khronos-opencl-pr}/1286[#1286].
682682
** Refactored command-buffer queue compatibility, see {khronos-opencl-pr}/1292[#1292].
683683
** Documented that {clFinalizeCommandBufferKHR} is not thread-safe, see {khronos-opencl-pr}/1345[#1345].
684-
* {cl_khr_command_buffer_mutable_dispatch_EXT} (provisional):
684+
* {cl_khr_command_buffer_mutable_dispatch_EXT} (experimental):
685685
** Clarified how implementations may defer updates to the command-buffer, see {khronos-opencl-pr}/1315[#1315].
686686
** Documented that {clUpdateMutableCommandsKHR} is not thread-safe, see {khronos-opencl-pr}/1345[#1345].
687687
* {cl_khr_external_memory_EXT}:

api/appendix_extensions.asciidoc

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -26,21 +26,24 @@ Within each group, extensions are listed in alphabetical order by their
2626
names.
2727

2828

29-
[[boilerplate-provisional-header]]
30-
== Provisional Extensions
29+
[[boilerplate-experimental-header]]
30+
== Experimental Extensions
3131

32-
_Provisional_ OpenCL extensions described in this appendix have been
33-
Ratified under the Khronos Intellectual Property Framework.
34-
They are being made publicly available as provisional extensions to enable
35-
review and feedback from the community.
36-
While an extension is provisional, features may be added, removed, or
37-
changed in non-backward compatible ways.
32+
_Experimental_ OpenCL extensions described in this appendix are being made
33+
publicly available to enable review and feedback
34+
from the community. While an extension is experimental, features may be
35+
added, removed, or changed in non-backward compatible ways.
3836

39-
If you have feedback on a provisional extension, please create an issue on
37+
[NOTE]
38+
====
39+
Previous revisions of this specification used the term _provisional_ to denote
40+
ratified extensions with an experimental status.
41+
====
42+
43+
If you have feedback on an experimental extension, please create an issue on
4044
the link:https://github.com/KhronosGroup/OpenCL-Docs/[OpenCL-Docs
4145
repository].
4246

43-
4447
== Extension Dependencies
4548

4649
Extensions which have dependencies on specific core versions or on other
@@ -49,5 +52,5 @@ extensions will list such dependencies.
4952
All extensions implicitly require support for OpenCL 1.0.
5053

5154
include::{generated}/meta/current_extensions_appendix.txt[]
52-
include::{generated}/meta/provisional_extensions_appendix.txt[]
55+
include::{generated}/meta/experimental_extensions_appendix.txt[]
5356
include::{generated}/meta/deprecated_extensions_appendix.txt[]

api/cl_khr_async_work_group_copy_fence.asciidoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,6 @@ information.
2222
=== Version History
2323

2424
* Revision 0.9.0, 2020-04-21
25-
** First assigned version (provisional).
25+
** First assigned version (experimental).
2626
* Revision 1.0.0, 2021-11-10
27-
** First non-provisional version.
27+
** First non-experimental version.

api/cl_khr_command_buffer.asciidoc

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ functionality expanding on this is provided as layered extensions on top of
147147
Having {cl_khr_command_buffer_EXT} as a minimal base specification means that the
148148
API defines mechanisms for functionality that is not enabled by this extension,
149149
these are described in the following sub-sections. {cl_khr_command_buffer_EXT} will
150-
retain its provisional extension status until other layered extensions are
150+
retain its experimental extension status until other layered extensions are
151151
released, as these may reveal modifications needed to the base specification to
152152
support their intended use cases.
153153

@@ -451,22 +451,22 @@ features:
451451
=== Version History
452452

453453
* Revision 0.9.0, 2021-11-10
454-
** First assigned version (provisional).
454+
** First assigned version (experimental).
455455
* 0.9.1, 2022-08-24
456456
** Specify an error if a command-buffer is finalized multiple times
457-
(provisional).
457+
(experimental).
458458
* 0.9.2, 2023-03-31
459-
** Introduce context query {CL_COMMAND_BUFFER_CONTEXT_KHR} (provisional).
459+
** Introduce context query {CL_COMMAND_BUFFER_CONTEXT_KHR} (experimental).
460460
* 0.9.3, 2023-04-04
461-
** Remove Invalid command-buffer state (provisional).
461+
** Remove Invalid command-buffer state (experimental).
462462
* 0.9.4, 2023-05-11
463463
** Add clCommandSVMMemcpyKHR and clCommandSVMMemFillKHR command entries
464-
(provisional).
464+
(experimental).
465465
* 0.9.5, 2024-07-24
466466
** Add a properties parameter to all command recording entry-points
467-
(provisional).
467+
(experimental).
468468
* 0.9.6, 2024-10-02
469-
** Add device query for supported queue properties (provisional).
469+
** Add device query for supported queue properties (experimental).
470470
* 0.9.7, 2024-12-13
471471
** Refactor queue compatability between command-buffer creation and enqueue
472-
(provisional).
472+
(experimental).

api/cl_khr_command_buffer_multi_device.asciidoc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -308,10 +308,10 @@ require it.
308308
=== Version History
309309

310310
* Revision 0.9.0, 2023-04-14
311-
** First assigned version (provisional).
311+
** First assigned version (experimental).
312312
* Revision 0.9.1, 2023-04-30
313313
** Added clCommandSVMMemcpyKHR and clCommandSVMMemFillKHR as affected
314-
functions (provisional).
314+
functions (experimental).
315315
* Revision 0.9.2, 2024-12-13
316316
** Update clRemapCommandBufferKHR behavior to match cl_khr_command_buffer
317-
version 0.9.7 (provisional).
317+
version 0.9.7 (experimental).

api/cl_khr_command_buffer_mutable_dispatch.asciidoc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -353,13 +353,13 @@ may be a introduced as a stand alone extension.
353353
=== Version History
354354

355355
* Revision 0.9.0, 2022-08-31
356-
** First assigned version (provisional).
356+
** First assigned version (experimental).
357357
* Revision 0.9.1, 2023-11-07
358358
** Add type {cl_mutable_dispatch_asserts_khr_TYPE} and its possible values
359-
(provisional).
359+
(experimental).
360360
* Revision 0.9.2, 2024-06-19
361361
** Change {clUpdateMutableCommandsKHR} API to pass configs as an array rather
362-
than linked list (provisional).
362+
than linked list (experimental).
363363
* Revision 0.9.3, 2024-09-05
364364
** Rename `CL_MUTABLE_DISPATCH_PROPERTIES_ARRAY_KHR` to
365-
`CL_MUTABLE_COMMAND_PROPERTIES_ARRAY_KHR` (provisional).
365+
`CL_MUTABLE_COMMAND_PROPERTIES_ARRAY_KHR` (experimental).

api/cl_khr_extended_async_copies.asciidoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ Copy Functions] section of the OpenCL C specification for more information.
2424
=== Version History
2525

2626
* Revision 0.9.0, 2020-04-21
27-
** First assigned version (provisional).
27+
** First assigned version (experimental).
2828
* Revision 0.9.1, 2021-09-06
2929
** Elements-based proposal update.
3030
* Revision 1.0.0, 2021-11-10
31-
** First non-provisional version.
31+
** First non-experimental version.

api/cl_khr_external_memory.asciidoc

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -277,19 +277,19 @@ while (true) {
277277
=== Version History
278278

279279
* Revision 0.9.0, 2021-09-10
280-
** Initial version (provisional).
280+
** Initial version (experimental).
281281
* Revision 0.9.1, 2023-05-04
282282
** Clarified device handle list enum cannot be specified without an
283-
external memory handle (provisional).
283+
external memory handle (experimental).
284284
* Revision 0.9.2, 2023-08-01
285285
** Changed device handle list enum to the memory-specific
286-
{CL_MEM_DEVICE_HANDLE_LIST_KHR} (provisional).
286+
{CL_MEM_DEVICE_HANDLE_LIST_KHR} (experimental).
287287
* Revision 0.9.3, 2023-08-29
288288
** Added query for
289289
{CL_DEVICE_EXTERNAL_MEMORY_IMPORT_ASSUME_LINEAR_IMAGES_HANDLE_TYPES_KHR}
290-
(provisional).
290+
(experimental).
291291
* Revision 1.0.0, 2024-03-15
292-
** First non-provisional version.
292+
** First non-experimental version.
293293
* Revision 1.0.1, 2024-09-03
294294
** Return {CL_INVALID_PROPERTY} when multiple external handles are provided
295295
when creating a memory object.

api/cl_khr_external_memory_dma_buf.asciidoc

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -43,16 +43,16 @@ image memory object.
4343
=== Version History
4444

4545
* Revision 0.9.0, 2021-09-10
46-
** Initial version (provisional).
46+
** Initial version (experimental).
4747
* Revision 0.9.1, 2023-05-04
4848
** Clarified device handle list enum cannot be specified without an
49-
external memory handle (provisional).
49+
external memory handle (experimental).
5050
* Revision 0.9.2, 2023-08-01
5151
** Changed device handle list enum to the memory-specific
52-
{CL_MEM_DEVICE_HANDLE_LIST_KHR} (provisional).
52+
{CL_MEM_DEVICE_HANDLE_LIST_KHR} (experimental).
5353
* Revision 0.9.3, 2023-08-29
5454
** Added query for
5555
{CL_DEVICE_EXTERNAL_MEMORY_IMPORT_ASSUME_LINEAR_IMAGES_HANDLE_TYPES_KHR}
56-
(provisional).
56+
(experimental).
5757
* Revision 1.0.0, 2024-03-15
58-
** First non-provisional version.
58+
** First non-experimental version.

0 commit comments

Comments
 (0)