[petsc-users] Superlu based ILUT report Zero pivot

Hong Zhang hzhang at mcs.anl.gov
Wed Nov 2 11:02:00 CDT 2011


Gong :

> I tried ASM + Superlu ILUT for my semicondcutor simulation code.
> For most of the problems, the ILUT preconditioner is very strong.
> Fewer KSP iterations are needed to get linear solver convergence compared with default ILU(0) preconditioner.
> However, ILUT is a bit slow with its default parameters.
> And sometimes it fault with
> Fatal Error:Zero pivot in row 74 at line 186 in superlu.c

We do not have much experience with Superlu ILUT.
What you can do is try various options provided by superlu
  -mat_superlu_ilu_droptol <0.0001>: ILU_DropTol (None)
  -mat_superlu_ilu_filltol <0.01>: ILU_FillTol (None)
  -mat_superlu_ilu_fillfactor <10>: ILU_FillFactor (None)
  -mat_superlu_ilu_droprull <9>: ILU_DropRule (None)
  -mat_superlu_ilu_norm <2>: ILU_Norm (None)
  -mat_superlu_ilu_milu <0>: ILU_MILU (None)

> Any suggestion to set some parameters to make it more rubost (and fast)?

I would also test '-sub_pc_type lu' which might be more efficient than ilu
if memory is not an issue.
Mumps sequential LU often outperforms other sequential lu.
You can 1) install mumps (needs scalapack, blacs and F90 compiler), then
2) run with '-sub_pc_type lu -pc_factor_mat_solver_package mumps'.

Hong
>
> Gong Ding
>
>
>
>
>


More information about the petsc-users mailing list