Open ptsuji opened 3 years ago
Hi @ptsuji . Would you mind adding --with-print-errors
to your configure line for hypre, recompiling, rerunning this case, and letting us know if an error message is printed (and what the message says)? Thanks!
Hi @rfalgout,
After building with --with-print-errors in the configuration, the output looks like this:
Iters | r | _2 conv.rate | r | _2/ | b | _2 |
---|
1 6.703413e+00 0.497382 4.973819e-01
2 7.900646e+00 1.178600 5.862145e-01
3 1.345706e+01 1.703286 9.984911e-01
hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG hypre error in file "pcg.c", line 682, error code = 256 - Subnormal gamma value in PCG HYPRE_LSC::launchSolver ERROR : in PCG solve.
@ptsuji Is it possible that you can provide us this particular matrix? Thanks!
@liruipeng @rfalgout the matrix is on the RZ. Who can I give it to there?
@liruipeng @rfalgout the matrix is on the RZ. Who can I give it to there?
@ptsuji If this can be moved to CZ, you can give it to me. My username is li50. Thanks!
@liruipeng I gave you the matrix on quartz. This file is what is written out by the FEI (8211 x 8211 matrix with 200263 nonzeros). Thanks for looking at this!
@ptsuji Got the matrix. Thanks! Which preconditioner do you use with PCG? Do you have the preconditioner parameters?
@liruipeng here are some of the parameters/output:
paramStrings[0] = "amgPmax 4" paramStrings[1] = "amgInterpType 6" paramStrings[2] = "amgRelaxType hybridsym" paramStrings[3] = "amgCoarsenType hmis" paramStrings[4] = "amgAggLevels 1" paramStrings[5] = "solver cg" paramStrings[6] = "preconditioner boomeramg" paramStrings[7] = "outputLevel 2" paramStrings[8] = "hypre" paramStrings[9] = "amgStrongThreshold 3.000000e-01" paramStrings[10] = "maxIterations 500" paramStrings[11] = "tolerance 1.000000e-08"
@liruipeng also, I should mention that I saw this error on 12 processors. On 1 processor, the ordering from the FEI interface is different, and things actually converge.
@liruipeng also, I should mention that I saw this error on 12 processors. On 1 processor, the ordering from the FEI interface is different, and things actually converge.
Hi @ptsuji Thank you for the information. To reproduce the problem, it will be easier to know how the system was distributed. If you have access to the HYPRE_IJ
objects that you give to PCG, can you add following lines in your code before PCG
HYPRE_IJMatrixPrint(ij_A, "IJ.out.A");
HYPRE_IJVectorPrint(ij_b, "IJ.out.b");
HYPRE_IJVectorPrint(ij_x, "IJ.out.x0");
to print matrix, right-hand-side vector and initial guess, and give the saved files (with 12 processes, each should be saved into 12 pieces) to me? Also, for verification, can you please also copy AMG hierarchy from hypre's output as the following one?
BoomerAMG SETUP PARAMETERS:
Max levels = 25
Num levels = 5
Strength Threshold = 0.250000
Interpolation Truncation Factor = 0.000000
Maximum Row Sum Threshold for Dependency Weakening = 1.000000
Coarsening Type = HMIS
measures are determined locally
No global partition option chosen.
Interpolation = extended+i interpolation
Operator Matrix Information:
nonzero entries/row row sums
lev rows entries sparse min max avg min max
======================================================================
0 1000 6400 0.006 4 7 6.4 0.000e+00 3.000e+00
1 500 7248 0.029 7 17 14.5 0.000e+00 4.000e+00
2 99 3003 0.306 15 43 30.3 1.041e-02 5.319e+00
3 14 188 0.959 11 14 13.4 5.274e+00 1.007e+01
4 4 16 1.000 4 4 4.0 7.597e+00 9.196e+00
Interpolation Matrix Information:
entries/row min max row sums
lev rows x cols min max avgW weight weight min max
================================================================================
0 1000 x 500 1 4 4.0 1.667e-01 2.500e-01 5.000e-01 1.000e+00
1 500 x 99 1 4 4.0 1.301e-02 3.547e-01 2.164e-01 1.000e+00
2 99 x 14 1 4 4.0 1.247e-03 3.928e-01 2.865e-02 1.000e+00
3 14 x 4 1 4 3.6 -6.320e-02 6.629e-02 -6.121e-02 1.000e+00
Complexity: grid = 1.617000
operator = 2.633594
memory = 3.350625
Thanks!
Hi Hypre team,
I'm trying to update to Hypre 2.20.0 (from version 2.15.1). Some of the tests I'm trying to run with PCG fail when going to this new version. What I see from the solver output is that PCG stops after the first 3 iterations:
How do we recover the old behavior of PCG? Is there a flag/input that we need to set?
Thanks,
Paul