quicklz compression offloaded to GPU

Has anyone “ported” the quicklz compression/decompression algorithms to Open CL? If so, can anyone point me to the source? If not, would it even be possible to do so (I do have a quicklz license)? Having never used Open CL before, I may be attempting to apply the technology to the wrong problem, but that is a topic for another discussion… At this point I’m simply interested in know if it has been done, or if it would even be possible.

I am curious about setting up a test scenario where I offload the quicklz compression to the GPU in my application to see if it speeds up the user experience. It may turn out that offloading quicklz to the GPU will actually slow things down (because the quicklz cannot technically be split up into parallel processing tasks, so the GPU run would be serial, but at least it would be offloaded off the main CPU).

Thank You,

  • Eric

at least it would be offloaded off the main CPU

I’m sure you are aware that CPUs made in the last five years or so usually have two, four or more cores. Chances are that it would be much easier to offload the compression workload into a separate thread or process, which would benefit from the multiple cores in your CPU, instead of trying to parallelize “quicklz”. If I were you I would look into Intel’s TBB or even the old trusty pthreads library.

OpenCL is cool and all but I would examine simpler solutions first.

Niether the iPhone nor the iPad have dual core CPU, but they do offer access to Open CL.