PoCL is a portable open source (MIT-licensed) implementation of the OpenCL standard. It likely supports the minimal v3.0 feature set (official conformance stamp not yet applied for). In addition to being an easily portable multi-device (truly heterogeneous) open-source OpenCL implementation, a major goal of this project is improving interoperability for diversity of OpenCL-capable devices by integrating them to a single centrally orchestrated platform. Another key goal is to enhance performance portability of OpenCL programs across device types utilizing runtime and compiler techniques.
Upstream PoCL currently supports various CPUs, NVIDIA GPUs via libcuda and ASIPs (experimental, see: http://openasip.org). It is also known to have multiple (private) adaptations in active production use.