OP2/PyOP2 — pull request #144 by wence- (2013-02-01 10:56:15+00:00)
Title: Mpi

Implement nascent support for MPI-parallel PyOP2.

Requires mpi4py

The only backend that implements this is sequential, but modifying other backends to do so requires a little more work (in feeding the plan the correct information).

Note, this gives no support for partitioning and renumbering a mesh in pyop2. If you want correct MPI you have to feed the halo information and numbering in correctly by hand. This latter is implemented in the floppy_gn branch of Fluidity, in which there are a number of MPI parallel UFL tests.

Untested, but hopefully working correctly:

Parallel reductions where the par_loop iterates over the exec halo

par_loops where some sets have zero size

no doubt numerous other corner case