https://hgpu.org/?p=12700
High Level Programming for Heterogeneous Architectures