https://hgpu.org/?p=7839
Using OpenCL: Programming Massively Parallel Computers