


Program accelerators with OpenCL 2.0 or above with conformant drivers that support SPIR-V. It is largely backwards compatible with OpenCL C 2.0 enabling it to be used to It enables developers to use most C++17 features in C++ for OpenCL is supported by Clang and its documentation can be found here. Improved features and compatibility with OpenCL C. The OpenCL working group has transitioned from the original OpenCL C++ kernel language firstĭefined in OpenCL 2.0 to C++ for OpenCL developed by the open source community to provide TheĬommunity driven C++ for OpenCL language brings together capabilities of OpenCL and C++17. All versions of the OpenCL C language are based on C99. (C++ for OpenCL) that enables a developer to program computationally intensive parts of theirĪpplication in a kernel program. Kernel programs can be written in a dialect of C (OpenCL C) or C++ Traditional vsĪpplication host code is frequently written in C or C++ but bindings for other languages are alsoĪvailable, such as Python. Generating binary/SPIR-V, for example Halide. There are also domain specific languagesĪnd frameworks that can compile to OpenCL either using source-to-source translations or Machine binary or special portable intermediate representation defined by Khronos called SPIR-V. It can alternatively be compiled before executing the application into the The device compilation phase can be done online, i.e. Programming language such as C or C++ and compiled by a conventional compiler for execution on a An OpenCL application is split into host and device parts with host code written using a general
