https://hgpu.org/?p=2270
Introduction to GPGPU programming