[petsc-users] Domain partitioning using DAs

Mohamad M. Nasr-Azadani mmnasr at gmail.com
Sat Oct 8 07:27:28 CDT 2011


Thanks Jed. I guess the whole point I am missing is in that "squarish".
I, for instance, use two processors for a domain of the global size:
nx=50
ny=40
nz=4

To my surprise, the way it was decomposed was in y-direction, i.e.
processor 0:
0-49
0-19
0-3

processor 1:
0-49
20-39
0-3

and not x-direction which minimizes the surface area between the two
processors.
Obviously "2" is a prime number. In that case, is PETSc biased to choose any
of the directions?

Thanks again
Best,
Mohamad


On Fri, Oct 7, 2011 at 5:34 AM, Jed Brown <jedbrown at mcs.anl.gov> wrote:

> On Fri, Oct 7, 2011 at 02:58, Mohamad M. Nasr-Azadani <mmnasr at gmail.com>wrote:
>
>> How does DACreate3d() partition the domain among processors?
>> Is it based on the minimizing the surface between the processors? Or it is
>> just a simple x-y-z order?
>>
>
> It tries to produce a "squarish" partition based on divisibility of the
> number of processes. It will only partition in one direction if you use a
> prime number of processes, for example.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20111008/bcbc65d0/attachment.htm>


More information about the petsc-users mailing list