Skip to content

Commit

Permalink
Updated old and added new IMG extensions. (KhronosGroup#90)
Browse files Browse the repository at this point in the history
* Added IMG HTML extension files.

* Redirect previously published IMG extensions to their new HTML files.

* Added extension 66: cl_img_generate_mipmap.

* Added extension 67: cl_img_mem_properties.

* Updated clext.php with update IMG extensions.

* Alphabetise IMG extension ordering.

* Update txt versions of IMG extensions to signpost the HTML version.
  • Loading branch information
Jeremy-Kemp authored Nov 24, 2020
1 parent 096f8e4 commit 250691c
Show file tree
Hide file tree
Showing 10 changed files with 5,707 additions and 530 deletions.
10 changes: 7 additions & 3 deletions extensions/clext.php
Original file line number Diff line number Diff line change
Expand Up @@ -85,11 +85,11 @@
</li>
<li value=43><a href="extensions/intel/cl_intel_required_subgroup_size.html">cl_intel_required_subgroup_size</a>
</li>
<li value=44><a href="extensions/img/cl_img_cached_allocations.txt">cl_img_cached_allocations</a>
<li value=44><a href="extensions/img/cl_img_cached_allocations.html">cl_img_cached_allocations</a>
</li>
<li value=45><a href="extensions/img/cl_img_use_gralloc_ptr.txt">cl_img_use_gralloc_ptr</a>
<li value=45><a href="extensions/img/cl_img_use_gralloc_ptr.html">cl_img_use_gralloc_ptr</a>
</li>
<li value=46><a href="extensions/img/cl_img_yuv_image.txt">cl_img_yuv_image</a>
<li value=46><a href="extensions/img/cl_img_yuv_image.html">cl_img_yuv_image</a>
</li>
<li value=47><a href="extensions/intel/cl_intel_driver_diagnostics.txt">cl_intel_driver_diagnostics</a>
</li>
Expand Down Expand Up @@ -129,4 +129,8 @@
</li>
<li value=65><a href="extensions/intel/cl_intel_mem_force_host_memory.html">cl_intel_mem_force_host_memory</a>
</li>
<li value=66><a href="extensions/img/cl_img_generate_mipmap.html">cl_img_generate_mipmap</a>
</li>
<li value=67><a href="extensions/img/cl_img_mem_properties.html">cl_img_mem_properties</a>
</li>
</ol>
1,063 changes: 1,063 additions & 0 deletions extensions/img/cl_img_cached_allocations.html

Large diffs are not rendered by default.

99 changes: 7 additions & 92 deletions extensions/img/cl_img_cached_allocations.txt
Original file line number Diff line number Diff line change
@@ -1,96 +1,11 @@
Name
The cl_img_cached_allocations.txt extension is no longer authored in plain text.

IMG_cached_allocations
Please refer to the HTML extension specification instead,
which may be found here:

Name Strings
https://www.khronos.org/registry/OpenCL/extensions/img/cl_img_cached_allocations.html

cl_img_cached_allocations
The asciidoc source for this extension specification may
be found here:

Contributors

Jeremy Kemp

Contacts

Jeremy Kemp, Imagination Technologies (jeremy.kemp 'at' imgtec.com)

Status

Unapproved.

Version

Revision: #3, Nov 6, 2014

Number

OpenCL Extension #44

Dependencies

Requires OpenCL version 1.2 or later.

This extension is written against the wording of the OpenCL 1.2
Specification.

Overview

This extension extends the functionality provided by
clCreateBuffer and clCreateImage to allow the OpenCL
implementation to allocate memory on the device which
is also cached on the host CPU.

Glossary

None

New Types

None

New Procedures and Functions

None

New Tokens

CL_MEM_USE_UNCACHED_CPU_MEMORY_IMG (1 << 26)

CL_MEM_USE_CACHED_CPU_MEMORY_IMG (1 << 27)

Additions to Chapter 5 of the OpenCL 1.2 Specification (Memory Objects)

In Table 5.3, page 69, add the following text as a new row in the table:

"CL_MEM_USE_UNCACHED_CPU_MEMORY_IMG

If this flag is specified it means that the application wants the
OpenCL implementation to allocate memory on the device so that it
is not cached when accessed on the host."

In Table 5.3, page 69, add the following text as a new row in the table:

"CL_MEM_USE_CACHED_CPU_MEMORY_IMG

If this flag is specified it means that the application wants the
OpenCL implementation to allocate memory on the device so that it
is cached when accessed on the host."

Issues

1. This extension may or may not improve performance; it depends on the
specific use-case. It is most likely to improve performance in cases
where the buffer or image is mapped using clEnqueueMapBuffer/Image
and some processing is then performed on the host-side. Whether the
allocation flag improves performance depends on whether the overhead
of cache flushes is greater than the performance gain from cached
memory accessing when doing the host-side processing. It's recommended
to apply the flag on case-by-case basis to see if it improves your
use-case.

Revision History

#2 - Update overview section to say that the extension also supports images.
Add more detail to the overview section.

#1 - Initial revision.
https://github.com/KhronosGroup/OpenCL-Docs/blob/master/extensions/cl_img_cached_allocations.asciidoc
Loading

0 comments on commit 250691c

Please sign in to comment.