[petsc-users] parmetis weights
francois pacull
fpacull at fluorem.com
Tue Aug 9 06:00:10 CDT 2011
Dear All,
I once submitted (last september) a question about weights in ParMETIS:
after looking at mat/partition/impls/pmetis/pmetis.c, I had the feeling
that the "wgtflag" variable was always set to zero and thus that the
edge weights were not taken into account by ParMETIS... I eventually
tried to use edge weights in order to improve a domain decomposition and
indeed, I had to add "wgtflag = 1; " just before the call to
ParMetis_V3_PartKway, otherwise the edge weights would always be equal
to one (even if the adjacency matrix was weighted). The PETSc version I
am using is 3.1-p8.
Also, for people that would like to use weights, note that the edge
weights need to be //PetscInt values (I had an overflow problem with
very large weights, maybe because the "edgecut" variable summing all
weights of the boundary is also an int4).
Regards,
francois.
Barry Smith wrote:
> It is possible that the code is not tested in that mode. If you determine that something is wrong when you get to this let us know. Perhaps you need to set that flag and see if it works and then tell us what change you made.
>
> Barry
>
>
>
> On Sep 28, 2010, at 12:08 PM, francois pacull wrote:
>
>
>> Dear PETSc team,
>> I just have a small and naive question about graph weights in Parmetis. When looking at mat/partition/impls/pmetis/pmetis.c, it seems that weight arrays (for vertices or edges) can be given to parmetis, however the wgtflag variable is always set to 0 from what I understand, which means that no weights are used in ParMETIS_V3_PartKway. So does this mean that the parmetis routine uses the weight arrays whenever they are not NULL, even if wgtflag is 0? I didn't try to use any weight yet, but will probably try it soon...
>> Thank you for any help you can provide,
>> francois pacull.
>>
>>
>>
>
>
>
More information about the petsc-users
mailing list