https://hgpu.org/?p=9080
General Purpose Computation on Graphics Processing Units Using OpenCL