CL++
September 28th, 2009
OpenCL is an amazing library for writing computationally intensive functions directly to the computer’s GPU. And while the standard headers are good and concise, there is a lot of overhead just to get a small piece of code to work.
CL++ is a small wrapper I developed to make using OpenCL even easier. Particularly good is the integration of Eigen, a linear algebra C++ library, with OpenCL. Almost always the data I am working with is in matrix form and so having an easy way to call GPU functions with matrixes as parameters makes things very user friendly.
This project has been used to create dozens of small OpenCL routines which have probably saved me numerous hours due to the performance gains.
Note: OpenCL does offer an experimental C++ wrapper, however it neither is stable nor does it offer linear algebra integration functionality.