want to make some changes to PCASM
Lisandro Dalcin
dalcinl at gmail.com
Thu Nov 20 15:59:34 CST 2008
I would like to make some changes and enhancements in PCASM:
1) Make it take full ownership (allocated array memory and IS
references) of the subdomain index sets.
2) Currently, if the matrix is symmetric, ASM switches to type
PC_ASM_BASIC in PCSetFromOptions_ASM().
I believe this should also be handled on PCSetup_ASM(). If not, we get
different behavior if PCSetFromOptions() is never called.
Moreover, I believe PCSetFromOptions_ASM() should call PCASMSetType()
if the '-pc_asm_type' option is passed.
3) If more than one block per processor is requested, then ASM
currently does a row-based partitioning. For unstructured problems and
LU-based local solves, this is going to be really bad, right?
I've already implemented an 'smart' subdomain partitioner based on
MatPartitioningXXX. I'm thinking about adding a new utility routine
(in the spirit of PCASMCreateSubdomains2d)
PCASMCreateSubdomains(Mat A, MatPartitioningType mptype, PetscInt
local_blocks, IS *is[])
which could be called in order to get a good subdomain partitioning,
and next pass it to PCASMSetLocalSubdomains().
Does all this make sense?
--
Lisandro Dalcín
---------------
Centro Internacional de Métodos Computacionales en Ingeniería (CIMEC)
Instituto de Desarrollo Tecnológico para la Industria Química (INTEC)
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET)
PTLC - Güemes 3450, (3000) Santa Fe, Argentina
Tel/Fax: +54-(0)342-451.1594
More information about the petsc-dev
mailing list