The hardest part of programming with OpenCL is parallelizing your algorithm, which means writing your kernels. Most likely, you will spend most of the time setting up and understanding your OpenCL C code, which AFAIK is your only choice for writing kernels.
In this case, I say that I want to use a pure C / OpenCL implementation. Once you enable and run the OpenCL API toolbar, you are unlikely to have much to change. Anyway, you'll play with things like the size of the workgroup that you pass to clEnqueueNDRangeKernel .
If you are new to CL, I say that it is simple. Adding a different level of software to the problem - especially a problem defined as a linear solver - only complicates your efforts.
EDIT:
I must add that you are expanding your potential for online help / support using the standard OpenCL API. If you decide to go with one of the python bundles, you can limit your potential support to people from these communities.
James source share