[petsc-dev] PC ML Setup Error

domenico.borzacchiello at univ-st-etienne.fr domenico.borzacchiello at univ-st-etienne.fr
Wed Jun 29 07:45:10 CDT 2011


Hi,
I use ML as a preconditioner for the pressure poisson equation for Stokes
problem. I solve for the pressure at each time step with ad DMMGSolve on
the whole (Stokes) system. I randomly get the following error at some
point.

[0]PETSC ERROR: --------------------- Error Message
------------------------------------
[0]PETSC ERROR: Operation done in wrong order!
[0]PETSC ERROR: Number levels already set for MG
  make sure that you call PCMGSetLevels() before KSPSetFromOptions()!
[0]PETSC ERROR:
------------------------------------------------------------------------
[0]PETSC ERROR: Petsc Development HG revision:
d1471993ab06fb6a9072f156c420ef0a456a086c  HG Date: Sun May 01 09:59:41
2011 -0500
[0]PETSC ERROR: See docs/changes/index.html for recent updates.
[0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
[0]PETSC ERROR: See docs/index.html for manual pages.
[0]PETSC ERROR:
------------------------------------------------------------------------
[0]PETSC ERROR: ./2dbphlow on a arch-linu named
domenico-Dell-System-XPS-L502X by domenico Wed Jun 29 14:32:00 2011
[0]PETSC ERROR: Libraries linked from /opt/petsc-dev/arch-linux2-c-debug/lib
[0]PETSC ERROR: Configure run at Thu May  5 03:28:56 2011
[0]PETSC ERROR: Configure options --with-cc=icc --with-fc=ifort
--download-f-blas-lapack=1 --download-mpich=1 --download-superlu_dist
--download-parmetis --download-mumps --download-blacs --download-scalapack
--download-hypre --download-ml --with-c2html=0 --download-prometheus
--download-parms
[0]PETSC ERROR:
------------------------------------------------------------------------
[0]PETSC ERROR: PCMGSetLevels() line 151 in src/ksp/pc/impls/mg/mg.c
[0]PETSC ERROR: PCSetUp_ML() line 610 in src/ksp/pc/impls/ml/ml.c
[0]PETSC ERROR: PCSetUp() line 819 in src/ksp/pc/interface/precon.c
[0]PETSC ERROR: KSPSetUp() line 261 in src/ksp/ksp/interface/itfunc.c
[0]PETSC ERROR: KSPSolve() line 383 in src/ksp/ksp/interface/itfunc.c
[0]PETSC ERROR: PCApply_LSC() line 85 in src/ksp/pc/impls/lsc/lsc.c
[0]PETSC ERROR: PCApply() line 383 in src/ksp/pc/interface/precon.c
[0]PETSC ERROR: FGMREScycle() line 174 in
src/ksp/ksp/impls/gmres/fgmres/fgmres.c
[0]PETSC ERROR: KSPSolve_FGMRES() line 300 in
src/ksp/ksp/impls/gmres/fgmres/fgmres.c
[0]PETSC ERROR: KSPSolve() line 426 in src/ksp/ksp/interface/itfunc.c
[0]PETSC ERROR: PCApply_FieldSplit_Schur() line 572 in
src/ksp/pc/impls/fieldsplit/fieldsplit.c
[0]PETSC ERROR: PCApply() line 383 in src/ksp/pc/interface/precon.c
[0]PETSC ERROR: FGMREScycle() line 174 in
src/ksp/ksp/impls/gmres/fgmres/fgmres.c
[0]PETSC ERROR: KSPSolve_FGMRES() line 300 in
src/ksp/ksp/impls/gmres/fgmres/fgmres.c
[0]PETSC ERROR: KSPSolve() line 426 in src/ksp/ksp/interface/itfunc.c
[0]PETSC ERROR: SNES_KSPSolve() line 3124 in src/snes/interface/snes.c
[0]PETSC ERROR: SNESSolve_LS() line 190 in src/snes/impls/ls/ls.c
[0]PETSC ERROR: SNESSolve() line 2424 in src/snes/interface/snes.c
[0]PETSC ERROR: DMMGSolveSNES() line 503 in src/snes/utils/damgsnes.c
[0]PETSC ERROR: DMMGSolve() line 313 in src/snes/utils/damg.c
[0]PETSC ERROR: main() line 726 in 2dbphlow.c
application called MPI_Abort(MPI_COMM_WORLD, 1) - process 0
[cli_0]: aborting job:
application called MPI_Abort(MPI_COMM_WORLD, 1) - process 0

=====================================================================================
=   BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
=   EXIT CODE: 256
=   CLEANING UP REMAINING PROCESSES
=   YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
=====================================================================================


I don't know the reason for it, it occurs at some random timestep if I
change any of the input parameters like the viscosity, the geometry, the
mesh size etc... Sometimes it just doesn't occur at all.

ML is used with the following options:


-stokes_fieldsplit_pressure_lsc_pc_type ml \
 -stokes_fieldsplit_pressure_lsc_pc_ml_maxCoarseSize 1 \
 -stokes_fieldsplit_pressure_lsc_pc_ml_Threshold 0.009 \
 -stokes_fieldsplit_pressure_lsc_pc_ml_Symmetrize\
 -stokes_fieldsplit_pressure_lsc_pc_ml_KeepAggInfo\
 -stokes_fieldsplit_pressure_lsc_pc_ml_Reusable\
 -stokes_fieldsplit_pressure_lsc_pc_ml_DampingFactor 1.3333 \

Any idea?







More information about the petsc-dev mailing list