PoCL is a portable open source (MIT-licensed) implementation of the
OpenCL standard (1.2 with some 2.0 features supported). In addition to
being an easily portable multi-device open-source OpenCL implementation,
a major goal of this project is improving interoperability of diversity
of OpenCL-capable devices by integrating them to a single centrally
Upstream PoCL currently supports various CPUs, NVIDIA GPUs via libcuda,
HSA-supported GPUs and TCE ASIPs (experimental, see:
http://openasip.org) It also is known to have multiple (private) ports.