| Dear Barry and Matt, Since the outputs from ksp_view and kip_monitor where not very helpful, I come back to you with results from more detailed tests on the solution a very ill-conditionned algebraic system solved in parallel with KSPSolve and MUMPS direct solver. 1) I have dumped into binary files both the assembled matrix and rhs computed with the two versions of my research code (PETSc-3.4p4 and 3.5p1). The respective files are:: Mat_bin_3.4p4, RHS_bin_3.4p4; Mat_bin_3.5p1, RHS_bin_3.5p1; 2) To prevent from any question refering to a possible bug in my own code upgrade I have run /src/ksp/ksp/examples/tutorials/ex10 (slightly modified to compute the L2 norm of the solution vector, attached to this e-mail) on 40 cores with the two PETSc versions and the combination of Mat and Rhs, with the following command line options: -f0 Mat_bin_3.5p1 -f1 Mat_bin_3.4p4 -rhs RHS_bin_3.4p4 -ksp_type preonly -pc_type lu -pc_factor_mat_solver_package mumps -mat_mumps_icntl_8 0 -mat_type mpiaij -vec_type mpi -options_left and : -f0 Mat_bin_3.5p1 -f1 Mat_bin_3.4p4 -rhs RHS_bin_3.5p1 -ksp_type preonly -pc_type lu -pc_factor_mat_solver_package mumps -mat_mumps_icntl_8 0 -mat_type mpiaij -vec_type mpi -options_left 3) Results provided below compare the outputs obtained by a diff on respective output files (all the four output files are attached to this e-mail): a) ex10-PETSs-3.5p1, running with the various binary matrix files and rhs files: diff Test_ex10-3.5p1_rhs-3.5p1.out Test_ex10-3.5p1_rhs-3.4p4.out 2c2 < Residual norm 1.66855e-08 --- > Residual norm 1.66813e-08 5c5 < Residual norm 1.6675e-08 --- > Residual norm 1.66699e-08 16c16 < -rhs RHS_bin_3.5p1 --- > -rhs RHS_bin_3.4p4 b) ex10-PETSs-3.5p1 versus ex10-PETSs-3.4p4, with the various binary matrix files and rhs files: diff Test_ex10-3.5p1_rhs-3.5p1.out Test_ex10-3.4p4_rhs-3.5p1.out 2,3c2,3 < Residual norm 1.66855e-08 < Solution norm 0.0161289 --- > Residual norm 2.89642e-08 > Solution norm 0.0731946 5,6c5,6 < Residual norm 1.6675e-08 < Solution norm 0.0161289 --- > Residual norm 2.89849e-08 > Solution norm 0.0732001 4) Analysis: - Test a) and its symmetric (undertaken with ex10-PETSc-3.4p1 demonstrate that the two matrices and two Rhs computed with the two PETSc versions are identical: they produce the same solution vector and comparable residuals, up to the numerical accuracy when solving such ill-conditionned algebraic systems (condition number of order of 1e9, that the reason I use the MUMPS direct solver); - Test b) and its symmetric (undertaken with the rhs computed with PETSc-3.4p4) show that a very different solution vector (more than 4 times difference in the L2 norm) is obtained when solving the algebraic system with ex10-3.5p1 and ex10-3.4p4, both with MUMPS-4.10.0 and the same command line options, whereas the residuals are quite different but only twice. The first two lines below refer to the former calculation and the last two lines refer to the latter one: < Residual norm 1.66855e-08 < Solution norm 0.0161289 --- > Residual norm 2.89642e-08 > Solution norm 0.0731946 5) Questions: - Do any default values in the PETSc-MUMPS interface have been changed from PETSc-3.4 to 3.5? - What is going wrong? If you have some time to play on your side with the binary files (matrices and rhs), I would be pleased to provide them to you, just let me know where to drop them. Their weight is approx 775 Mo for each mat and 16 Mo for each rhs. Thank you for you help to overcome this crazy problem. Best regards. Marc MEDALE |
ex10.c
Description: Binary data
Test_ex10-3.4p4_rhs-3.4p4.out
Description: Binary data
Test_ex10-3.4p4_rhs-3.5p1.out
Description: Binary data
Test_ex10-3.5p1_rhs-3.4p4.out
Description: Binary data
Test_ex10-3.5p1_rhs-3.5p1.out
Description: Binary data
Le 11 déc. 2014 à 18:01, Barry Smith <[email protected]> a écrit :
|
