OpenCL kernel implementation v0.3