https://hgpu.org/?p=18873
Principles, Techniques, and Tools for Explicit and Automatic Parallelization