[petsc-users] superlu_dist produces random results
Smith, Barry F.
bsmith at mcs.anl.gov
Wed Nov 15 14:59:40 CST 2017
Meaningless differences
> On Nov 15, 2017, at 2:26 PM, Kong, Fande <fande.kong at inl.gov> wrote:
>
> Hi,
>
> There is a heat conduction problem. When superlu_dist is used as a preconditioner, we have random results from different runs. Is there a random algorithm in superlu_dist? If we use ASM or MUMPS as the preconditioner, we then don't have this issue.
>
> run 1:
>
> 0 Nonlinear |R| = 9.447423e+03
> 0 Linear |R| = 9.447423e+03
> 1 Linear |R| = 1.013384e-02
> 2 Linear |R| = 4.020995e-08
> 1 Nonlinear |R| = 1.404678e-02
> 0 Linear |R| = 1.404678e-02
> 1 Linear |R| = 5.104757e-08
> 2 Linear |R| = 7.699637e-14
> 2 Nonlinear |R| = 5.106418e-08
>
>
> run 2:
>
> 0 Nonlinear |R| = 9.447423e+03
> 0 Linear |R| = 9.447423e+03
> 1 Linear |R| = 1.013384e-02
> 2 Linear |R| = 4.020995e-08
> 1 Nonlinear |R| = 1.404678e-02
> 0 Linear |R| = 1.404678e-02
> 1 Linear |R| = 5.109913e-08
> 2 Linear |R| = 7.189091e-14
> 2 Nonlinear |R| = 5.111591e-08
>
> run 3:
>
> 0 Nonlinear |R| = 9.447423e+03
> 0 Linear |R| = 9.447423e+03
> 1 Linear |R| = 1.013384e-02
> 2 Linear |R| = 4.020995e-08
> 1 Nonlinear |R| = 1.404678e-02
> 0 Linear |R| = 1.404678e-02
> 1 Linear |R| = 5.104942e-08
> 2 Linear |R| = 7.465572e-14
> 2 Nonlinear |R| = 5.106642e-08
>
> run 4:
>
> 0 Nonlinear |R| = 9.447423e+03
> 0 Linear |R| = 9.447423e+03
> 1 Linear |R| = 1.013384e-02
> 2 Linear |R| = 4.020995e-08
> 1 Nonlinear |R| = 1.404678e-02
> 0 Linear |R| = 1.404678e-02
> 1 Linear |R| = 5.102730e-08
> 2 Linear |R| = 7.132220e-14
> 2 Nonlinear |R| = 5.104442e-08
>
> Solver details:
>
> SNES Object: 8 MPI processes
> type: newtonls
> maximum iterations=15, maximum function evaluations=10000
> tolerances: relative=1e-08, absolute=1e-11, solution=1e-50
> total number of linear solver iterations=4
> total number of function evaluations=7
> norm schedule ALWAYS
> SNESLineSearch Object: 8 MPI processes
> type: basic
> maxstep=1.000000e+08, minlambda=1.000000e-12
> tolerances: relative=1.000000e-08, absolute=1.000000e-15, lambda=1.000000e-08
> maximum iterations=40
> KSP Object: 8 MPI processes
> type: gmres
> restart=30, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement
> happy breakdown tolerance 1e-30
> maximum iterations=100, initial guess is zero
> tolerances: relative=1e-06, absolute=1e-50, divergence=10000.
> right preconditioning
> using UNPRECONDITIONED norm type for convergence test
> PC Object: 8 MPI processes
> type: lu
> out-of-place factorization
> tolerance for zero pivot 2.22045e-14
> matrix ordering: natural
> factor fill ratio given 0., needed 0.
> Factored matrix follows:
> Mat Object: 8 MPI processes
> type: superlu_dist
> rows=7925, cols=7925
> package used to perform factorization: superlu_dist
> total: nonzeros=0, allocated nonzeros=0
> total number of mallocs used during MatSetValues calls =0
> SuperLU_DIST run parameters:
> Process grid nprow 4 x npcol 2
> Equilibrate matrix TRUE
> Matrix input mode 1
> Replace tiny pivots FALSE
> Use iterative refinement TRUE
> Processors in row 4 col partition 2
> Row permutation LargeDiag
> Column permutation METIS_AT_PLUS_A
> Parallel symbolic factorization FALSE
> Repeated factorization SamePattern
> linear system matrix followed by preconditioner matrix:
> Mat Object: 8 MPI processes
> type: mffd
> rows=7925, cols=7925
> Matrix-free approximation:
> err=1.49012e-08 (relative error in function evaluation)
> Using wp compute h routine
> Does not compute normU
> Mat Object: () 8 MPI processes
> type: mpiaij
> rows=7925, cols=7925
> total: nonzeros=63587, allocated nonzeros=63865
> total number of mallocs used during MatSetValues calls =0
> not using I-node (on process 0) routines
>
>
> Fande,
>
>
More information about the petsc-users
mailing list