https://hgpu.org/?p=5667
Embedding OpenCL in C++ for Expressive GPU Programming