OpenCL kernel implementation v0.2