What is "opencl"

Opencl is an architecture for writing programs that run on heterogeneous platforms, consisting of Cpus, Gpus, and other processors. Opencl includes a language (based on C99) for writing kernels (functions run on Opencl devices), and Apis that are used to define and then control heterogeneous platforms. It was adopted for graphics card controllers by AMD/ATI, which made it its only GPU offering as the Stream SDK, and by Nvidia, which also offers Opencl as the choice for its Compute Unified Device Architecture (CUDA) controllers. The Opencl architecture shares a number of computer interfaces with both CUDA and Microsoft’s competing Directcompute.