Chapter 11 – OpenCL Extensions

Publisher Summary This chapter discusses a number of these extensions that can provide programmers an extended set of tools to implement OpenCL applications. OpenCL defines three types of extensions: KHR extension, EXT extension, and vendor extension. KHR extension formally ratified by the OpenCL working group and comes with a set of conformance tests that any application claiming to support the extension must have passed. All KHR extensions are included as part of the OpenCL specification. EXT extension has been developed by one or more of the OpenCL working group members, but it has not been formally approved. There is no requirement for an EXT feature to pass conformance tests. An EXT extension is often used to provide early access to features being worked on by a subgroup of the OpenCL working group, many of which will appear in the specification core or as a KHR at a later date. Vendor extension is developed by a single vendor, most likely to expose some feature that is only accessible on the vendor’s hardware or platform.