[petsc-dev] Question about PCGASMSetSubdomains()

Barry Smith bsmith at mcs.anl.gov
Sun Jun 26 17:54:29 CDT 2016


> On Jun 26, 2016, at 5:48 PM, Fande Kong <fdkong.jd at gmail.com> wrote:
> 
> Barry,
> 
> Good questions. 
> 
> Yes, we are assuming the index sets on each process are somehow ordered. There is no way to check this. How to decompose the domain is determined by users, and they could choose any ways  they want.
> 
>  But we could check this condition. The number of local subdomains should be the same on all processors, that is, osm->n should be the same value on all processors. 

   But this is in that sub communicator. If different processes have the sub communicators in a different order then the communication for GASM will hang as some process is trying to communicate with the "wrong set" of other processes. Hmm, doesn't seem to be any easy way to detect this.

   Also can you document this requirement in the manual page for PCGASMSetSubdomains()?

   Thanks

   Barry

> 
> Fande,
> 
> On Sun, Jun 26, 2016 at 4:31 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
> 
>   Fande,
> 
>      How does PCGASMSetSubdomains() know which subdomain from an index set on one process is connected to an index set on another processor? Are you assuming the index sets on each process are somehow ordered to make sure that the right parts on each process connect to form the entire domain? What if someone passed them in a different order on some process, is there anyway to error check that?
> 
>    Thanks
> 
>      Barry
> 
> 




More information about the petsc-dev mailing list