https://hgpu.org/?p=9536
A MapReduce Framework for Heterogeneous Computing Architectures