https://hgpu.org/?p=7588
An Introduction to the OpenCL Programming Model