WebCL implementation