[petsc-users] ERROR: MatPartitioningApply_Parmetis() ... Does not support any processor with 0 entries

Dominik Szczerba dominik at itis.ethz.ch
Fri Oct 21 16:14:24 CDT 2011


>> The one that was downloaded automatically during configuration, which
>> is ParMetis-3.2.0-p1
>
> If I remember correctly, the problem is that ParMetis frequently crashes
> when called with empty subdomains. If it was working for you before, you
> were probably just lucky.

Hmm, I just want to partition my mesh that I read in serial. So
adjacency vectors are only on root. How can I provide distributed
adjacency information, before partitioning? This is an endless circle.
Or do you mean I should just broadcast my adjacency vectors ia,ja to
all the other processes?

> The best fix is to have the bug/limitation fixed upstream, but barring that,
> we should build a subcommunicator of suitable size, migrate the graph to
> that subcomm, call ParMetis from there, and migrate the new partition back
> to the original comm.

Are you suggesting to use other communicator than PETSC_COMM_WORLD in
the code I cited?
How would I go about creating a subcommunicator "of suitable size".
And what do you mean by "migrate"?

Thanks,
Dominik


More information about the petsc-users mailing list