[petsc-users] block ILU(K) is slower than the point-wise version?

Barry Smith bsmith at mcs.anl.gov
Tue Mar 7 20:37:10 CST 2017


> On Mar 7, 2017, at 4:35 PM, Kong, Fande <fande.kong at inl.gov> wrote:
> 
> I found one issue on my side. The preallocation is not right for the BAIJ matrix.  Will this slow down MatLUFactor and MatSolve?

  No, but you should still fix it.

> 
> How to converge AIJ to BAIJ using a command-line option?

   Instead of using MatCreateSeq/MPIAIJ() at the command line you would use 

   MatCreate()
   MatSetSizes()
   MatSetBlockSize()
   MatSetFromOptions()
   MatMPIAIJSetPreallocation()
   MatMPIBAIJSetPreallocation() and any other preallocations you want
   MatSetValues.....MatAssemblyBegin/End()

   Then you can use -mat_type baij or aij to set the type.

   Barry

> 
> Fande,
> 
> On Tue, Mar 7, 2017 at 3:26 PM, Jed Brown <jed at jedbrown.org> wrote:
> "Kong, Fande" <fande.kong at inl.gov> writes:
> 
> > On Tue, Mar 7, 2017 at 3:16 PM, Jed Brown <jed at jedbrown.org> wrote:
> >
> >> Hong <hzhang at mcs.anl.gov> writes:
> >>
> >> > Fande,
> >> > Got it. Below are what I get:
> >>
> >> Is Fande using ILU(0) or ILU(k)?  (And I think it should be possible to
> >> get a somewhat larger benefit.)
> >>
> >
> >
> > I am using ILU(0). Will it be much better to use ILU(k>0)?
> 
> It'll be slower, but might converge faster.  You asked about ILU(k) so I
> assumed you were interested in k>0.
> 



More information about the petsc-users mailing list