Hi all,
we have release our (still quite in progress) OpenCL implementation. It
uses a set of LLVM passes to statically replicate the workitems and
generate a bytecode of the actual code to be run, taking into account
the WI synchronization (barriers).
>From the project description:
Portable OpenCL is an open source implementation of the OpenCL standard
which can be easily adapted for new targets. One of the goals of the
project is improving performance portability of OpenCL programs,
avoiding the need for target-dependent manual optimizations. A
"native"
target is included, which allows running OpenCL kernels on the host
(CPU).
It is here: https://launchpad.net/pocl
Any comments/ideas are welcome!
Best regards,
Carlos