futharkpyopencl translates a Futhark program to Python code invoking OpenCL kernels, which depends on
Numpy and PyOpenCL. By default, the program uses the first device of the first OpenCL platform - this
can be changed by passing -p and -d options to the generated program (not to futharkpyopencl itself).
The resulting program will otherwise behave exactly as one compiled with futharkpy. While the
sequential host-level code is pure Python and just as slow as in futharkpy, parallel sections will have
been compiled to OpenCL, and runs just as fast as when using futharkopencl. The kernel launch overhead
is significantly higher, however, so a good rule of thumb when using futharkpyopencl is to aim for
having fewer but longer-lasting parallel sections.
The generated code requires at least PyOpenCL version 2015.2.