[petsc-dev] Are we suppressing stderr when comparing outputs of tests?

Pierre Jolivet pierre.jolivet at enseeiht.fr
Wed May 13 08:42:54 CDT 2020


I’m only CHKERRQ’ing inside the routine but I’m not propagating this down to the return code of KSPSolve.
I will try to fix this, or maybe switch to CHKERRABORT instead, because it currently goes like KSPSolve (PETSc) -> my stuff (non PETSc) -> MatMatMult or PCApply (PETSc), and I’m not sure I want to put some more PETSc code inside “my stuff” as it can be a pain to maintain for people that uses “my stuff” without PETSc. Sadly, they do exist.
Also, I’m using PetscFunction[Begin|End]User, don’t know if switching to PetscFunction[Begin|End] would change something here, though I’m guessing it wouldn't.

I’ll keep you posted, thanks for reporting this,
Pierre

> On 13 May 2020, at 3:03 PM, Stefano Zampini <stefano.zampini at gmail.com> wrote:
> 
> The error is raised from HPDDM , that does not stop and I think does not return error codes. Pierre?
> 
> Il giorno mer 13 mag 2020 alle ore 16:01 Matthew Knepley <knepley at gmail.com <mailto:knepley at gmail.com>> ha scritto:
> I see my stderr with tests. I am running it right now.
> 
>    Matt
> 
> On Wed, May 13, 2020 at 8:55 AM Stefano Zampini <stefano.zampini at gmail.com <mailto:stefano.zampini at gmail.com>> wrote:
> I have a test that fails, but it only prints a small amount of information
> 
> [szampini at localhost petsc]$ make -f gmakefile.test test search='ksp%' searchin='ex75_2_icc' PETSC_ARCH=arch-opt
> Using MAKEFLAGS: -- PETSC_ARCH=arch-opt searchin=ex75_2_icc search=ksp%
>         TEST arch-opt/tests/counts/ksp_ksp_tutorials-ex75_2_icc.counts
>  ok ksp_ksp_tutorials-ex75_2_icc+reset-false
> not ok diff-ksp_ksp_tutorials-ex75_2_icc+reset-false # Error code: 1
> # 3c3
> # < Linear solve converged due to CONVERGED_RTOL iterations 34
> # ---
> # > Linear solve did not converge due to DIVERGED_ITS iterations 1000
>  ok ksp_ksp_tutorials-ex75_2_icc+reset-true
>  ok diff-ksp_ksp_tutorials-ex75_2_icc+reset-true
> 
> If I run the test that fails myself, I get PETSC_ERROR messages
> 
> [szampini at localhost tutorials]$ ./ex75 -nmat 3 -pc_type icc -ksp_converged_reason -ksp_type hpddm -ksp_max_it 1000 -ksp_gmres_restart 40 -ksp_rtol 1e-10 -ksp_hpddm_type gcrodr -ksp_hpddm_recycle 20 -reset false -load_dir ${DATAFILESPATH}/matrices/hpddm/GCRODR
> Linear solve converged due to CONVERGED_RTOL iterations 94
> Linear solve converged due to CONVERGED_RTOL iterations 37
> [0]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------
> [0]PETSC ERROR: Operation done in wrong order
> [0]PETSC ERROR: Need to call MatDenseRestoreArray first
> [0]PETSC ERROR: See https://www.mcs.anl.gov/petsc/documentation/faq.html <https://www.mcs.anl.gov/petsc/documentation/faq.html> for trouble shooting.
> [0]PETSC ERROR: Petsc Development GIT revision: v3.13.1-192-g23916988c6  GIT Date: 2020-05-09 02:16:44 +0300
> [0]PETSC ERROR: ./ex75 on a arch-debug named localhost.localdomain by szampini Wed May 13 15:51:48 2020
> [0]PETSC ERROR: Configure options --DATAFILESPATH=/home/szampini/Devel/petscdatafiles --download-elemental --download-chaco --download-ctetgen --download-exodusii --download-glvis --download-hara --download-hara-commit=HEAD --download-hdf5 --download-hpddm --download-hpddm-commit=HEAD --download-hypre --download-metis --download-mfem-commit=origin/master --download-mfem=1 --download-ml --download-mumps --download-netcdf --download-p4est --download-parmetis --download-pnetcdf --download-ptscotch --download-revolve --download-scalapack --download-slepc --download-suitesparse --download-superlu --download-superlu_dist --download-triangle --with-blaslapack-include=/usr/include/openblas --with-cxx-dialect=C++11 --with-fortran-bindings=0 --with-opengl --with-openmp --with-thrust-dir=/home/szampini/local --with-valgrind --with-zlib CFLAGS="-Wall -g -O0" CXXFLAGS="-Wall -g -O0" FFLAGS="-g -O0" PETSC_ARCH=arch-debug
> [0]PETSC ERROR: #1 MatDensePlaceArray_SeqDense() line 1364 in /home/szampini/Devel/petsc/src/mat/impls/dense/seq/dense.c
> [0]PETSC ERROR: #2 MatDensePlaceArray() line 1900 in /home/szampini/Devel/petsc/src/mat/impls/dense/mpi/mpidense.c
> [0]PETSC ERROR: #3 GMV() line 128 in /home/szampini/Devel/petsc/arch-debug/include/HPDDM_PETSc.hpp
> [0]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------
> [0]PETSC ERROR: Operation done in wrong order
> [0]PETSC ERROR: Need to call MatDenseRestoreArray first
> [0]PETSC ERROR: See https://www.mcs.anl.gov/petsc/documentation/faq.html <https://www.mcs.anl.gov/petsc/documentation/faq.html> for trouble shooting.
> [0]PETSC ERROR: Petsc Development GIT revision: v3.13.1-192-g23916988c6  GIT Date: 2020-05-09 02:16:44 +0300
> [0]PETSC ERROR: ./ex75 on a arch-debug named localhost.localdomain by szampini Wed May 13 15:51:48 2020
> [0]PETSC ERROR: Configure options --DATAFILESPATH=/home/szampini/Devel/petscdatafiles --download-elemental --download-chaco --download-ctetgen --download-exodusii --download-glvis --download-hara --download-hara-commit=HEAD --download-hdf5 --download-hpddm --download-hpddm-commit=HEAD --download-hypre --download-metis --download-mfem-commit=origin/master --download-mfem=1 --download-ml --download-mumps --download-netcdf --download-p4est --download-parmetis --download-pnetcdf --download-ptscotch --download-revolve --download-scalapack --download-slepc --download-suitesparse --download-superlu --download-superlu_dist --download-triangle --with-blaslapack-include=/usr/include/openblas --with-cxx-dialect=C++11 --with-fortran-bindings=0 --with-opengl --with-openmp --with-thrust-dir=/home/szampini/local --with-valgrind --with-zlib CFLAGS="-Wall -g -O0" CXXFLAGS="-Wall -g -O0" FFLAGS="-g -O0" PETSC_ARCH=arch-debug
> [0]PETSC ERROR: #4 MatDensePlaceArray_SeqDense() line 1364 in /home/szampini/Devel/petsc/src/mat/impls/dense/seq/dense.c
> [0]PETSC ERROR: #5 MatDensePlaceArray() line 1900 in /home/szampini/Devel/petsc/src/mat/impls/dense/mpi/mpidense.c
> [0]PETSC ERROR: #6 apply() line 216 in /home/szampini/Devel/petsc/arch-debug/include/HPDDM_PETSc.hpp
> Linear solve did not converge due to DIVERGED_ITS iterations 1000
> 
> Why is that? are we suppressing stderr when comparing diffs?
> 
> -- 
> Stefano
> 
> 
> -- 
> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
> -- Norbert Wiener
> 
> https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
> 
> 
> -- 
> Stefano

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20200513/7eda1b82/attachment.html>


More information about the petsc-dev mailing list