So shell can 1) use some random partitioner or 2) allow the user to provide the partitioning?
This is a strange combination. Won't it be better to have PETSCPARTIONERRANDOM and PETSCPARTITIONERSHELL? You could use the random for the tests (but as command line options not hardwired in the examples). Barry > On Feb 9, 2017, at 9:45 PM, Matthew Knepley <[email protected]> wrote: > > On Thu, Feb 9, 2017 at 9:36 PM, Barry Smith <[email protected]> wrote: > > Matt, > > I don't understand PETSCPARTITIONSHELL. > > Why does it exist? Why not just use PETSCPARTITIONSIMPLE when no other > partitioner exists? > > Why is it called shell? Other XXSHELL allow users to provide their own > routines to provide the XX functionality, this does not seem to do that. So > it is not shell in the PETSc sense. > > Why hard wire examples to use it? Why not just have list it as an args: in > the test cases with -petscpartitioner_type shell (but why not just simple?) > putting the ugly shit directly into the source code seems unnecessary and > annoying. > > 1) The two partitioners do different things: > > Simple: It divides the cells evenly without reordering. > > Shell: It allows the user to set a prescribed partition > > It is clear to me that Shell is needed because sometimes you want to > prescribe the partition, if for no > other reason than you know that a certain partition has a bug. Simple is > questionable, but we were > using it for testing. > > 2) It is called Shell because for a shell the user prescribes the behavior > directly, which is exactly what happens. > > 3) I did not put it in arguments because it can get very long, and I thought > it was easier to see and manipulate in the code. I am open to moving it. > > Matt > > > > Barry > > > > > > > -- > What most experimenters take for granted before they begin their experiments > is infinitely more interesting than any results to which their experiments > lead. > -- Norbert Wiener
