https://hgpu.org/?p=2575
Swan: A tool for porting CUDA programs to OpenCL