[petsc-users] ParMETIS question
Thomas Witkowski
thomas.witkowski at tu-dresden.de
Wed Dec 22 03:07:22 CST 2010
Okay, in my computations, I have empty partitions on some ranks and
definitely not
minimal boundary sizes. So may be I generate a wrong input. But if this
is the case, I
wonder why the resulting mesh partitioning is quite good. If I neglect
the problem of
empty partitions, the redistributed mesh leads to a very good load
balancing. Is there
any meaningful way to debug the problem? Is there something link a
"verbose mode" in
ParMetis that says me whats happen on the input data? Otherwise I have
to print all the
input data to the screen and check it by hand. Although I have a quite
small example with
128 overall coarse mesh elements on 8 ranks, this is not big fun :)
Thomas
@Matthew: By mistake I've answered your mail directly to you and not to
the mailing list, therefore I sent it now here again
Matthew Knepley wrote:
> On Tue, Dec 21, 2010 at 5:49 AM, Thomas Witkowski
> <thomas.witkowski at tu-dresden.de
> <mailto:thomas.witkowski at tu-dresden.de>> wrote:
>
> Hi,
>
> I have a not directly PETSc related question, but I hope to get
> some answer from the community here. In my FEM code, I make use of
> ParMETIS to partition the mesh. I make direct use of this library
> and not of PETSc's ParMETIS integration. The initial partition is
> always fine, but I use the ParMETIS_V3_AdaptiveRepart function for
> repartition the mesh due to local mesh adaption. In most cases,
> the result is fine, but there are two points, where I have trouble
> with:
>
> 1) Sometimes ParMETIS generates empty partitions, i.e., a
> processor has zero mesh elements. This is something my code cannot
> handle. Is this a bug or a feature? If it is a feature, is there
> any possiblity to disable it?
>
>
> ParMetis has a balance constraint if you weight vertices. This will
> enforce equal size partitions.
>
>
> 2) In most cases the specific partitions are not connected. If I
> put all data to ParMETIS in a correct way, is this okay? My code
> can handle it, but is slows down the computation due to larger
> interior boundaries and therefore to more communications.
>
>
> ParMetis minimizes the overall boundary size, so I do not understand
> how you could see this slowdown.
>
> Matt
>
>
> Does anyone of you know an answer to these question? Is there a
> debug mode in ParMETIS, where I can see which data is set to its
> function calls?
>
> Regards,
>
> Thomas
>
>
>
>
> --
> 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
More information about the petsc-users
mailing list