Add new initial partition schemes and extend repartition ones.
Compare changes
Add new schemes for the initial partition of cells for MPI.
The initial cell distribution can now be based on a METIS partition of the cell graph using particle counts per cell and a simple unweighted version. The distribution can also be based on a vectorised selection of seed cells. This is guaranteed to work for all cases when the number of MPI nodes is less than the number of cells (the grid and METIS based ones do not guarantee this), so is the fallback method when the others fail.
Repartition is also extended to offer particle count based weights, as well the existing task times weights for edges and vertices, which is extended to allow weighting by edges only and a hybrid particle count vertices and times for edges.
A failure to repartition is handled by continuing with the existing partition.
The new options are handled by flags:
-R
- reparition type: 'n', 'b', 'v', 'e', 'x'-P
- initial Partition type: 'g', 'm', 'w', 'v'note the old '-g' flag is removed, use '-P g' or '-P g n n n' now.
The repartition types are:
And the initial partition types:
Not giving any options just gives the existing behaviour, i.e. grid initial partition and task time weighted redistribution.