[petsc-dev] Backport PCASMCreateSubdomains2D fix to 3.1?

Barry Smith bsmith at mcs.anl.gov
Sun Jun 6 15:15:30 CDT 2010


On Jun 6, 2010, at 2:38 PM, Jed Brown wrote:

> ksp/examples/tutorials/ex8.c is broken in the release (with
> -user_set_subdomains).  The trouble is that PC_ASM_RESTRICT really needs
> both the overlapping and nonoverlapping subdomains.  Since Matt added
> RASM support for multiple subdomains per process (between 3.0 and 3.1),
> this function really needs to provide both in order to be useful.  I
> added that to -dev, along with PCASM support to work properly when the
> user provides both.  I think this should be backported, despite being an
> API change to PCASMCreateSubdomains2D, because I don't think anyone
> actually uses this function (except this example).

   I don't care about this.
> 
> Some other notes on PCASM, unrelated backporting the fixes above:
> 
> * As currently written, PCASM *always* does RASM when there are multiple
>  subdomains per process.

    This is BAD.  Matt should be ashamed of himself.
> 
> * PCASM currently doesn't support having the user call
>  PCASMSetLocalSubdomains with multiple subdomains per process,
>  specifying 'is', but not 'is_local'.  This worked prior to 3.1, and I
>  think this functionality should eventually be restored (for
>  PC_ASM_BASIC, it's not possible with PC_ASM_RESTRICT).

   This is bad and should be fixed.
> 
> * What was the eventual intended behavior for PCASMSetTotalSubdomains
>  with specified index sets?  You could implement a form of field split
>  or decompose a small number of subdomains (like different materials)
>  this way.  But I think a more practical interface would be to have
>  PCASMSetLocalSubdomains support index sets on arbitrary
>  subcommunicators of pc->hdr.comm (it exposes more concurrency).  I see
>  that several parts of PCASM were already written with this (support of
>  multiple procs per subdomain) in mind.
> 
>  http://lists.mcs.anl.gov/pipermail/petsc-dev/2010-April/002569.html
> 
>  Is there a practical use for IS arguments of PCASMSetTotalSubdomains?

    It never got developed and probably makes no sense.  I guess we should just remove the is argument to it.

    Barry

> 
> Jed




More information about the petsc-dev mailing list