https://hgpu.org/?p=5877
Implementing modular arithmetic using OpenCL