Sudip:
I've encountered a potential issue while compiling and running the deal.II
code gallery example titled /"Quasi-Static Finite-Strain Quasi-Incompressible
Viscoelasticity"/ from here
<https://dealii.org/developer/doxygen/deal.II/code_gallery_Quasi_static_Finite_strain_Quasi_incompressible_ViscoElasticity.html>. Specifically, the release build runs correctly with MPI, but the debug build crashes when run with MPI. When run in serial (without MPI), both the debug and release builds run as expected, producing identical screen output.
Steps to reproduce :
- Download files attached to this message
- Run "cmake ." in the folder to which files were downloaded
- Run commands "make release" then "make" then "mpirun -np 2
./viscoelastic_strip_with_hole". Program will run as expected.
- Run commands "make debug" then "make" then "mpirun -np 2
./viscoelastic_strip_with_hole". Program will crash.
Library versions :
- deal.II : 9.6.2
- openmpi : 4.1.0
- Trilinos : 16.0.0
- metis : Version included with petsc 3.22.3
- OS : Ubuntu 24.04 LTS
From the message displayed by deal.II upon crashing : The program crashes in
the output_results() function upon encountering the first call to
DataOut::add_data_vector because the block vector being added to the DataOut
object is has non-contiguous blocks. Why is this a problem for the debug build
in MPI but not the release build with MPI ?
It is also a problem in release mode, it's just that there is no *check* to
catch the problem, and consequently the program continues without producing
the error. In all likelihood, the results are then wrong.
I spent the last hour looking at this program, and I think what happened is
that it *used* to be possible to partition a ::Triangulation object by hand
and have the DoFHandler do the right thing, but that that is no longer the
case (likely for good reasons). I verified that the underlying reason for the
crash you see can be fixed by using parallel::shared::Triangulation instead,
which is in essence what the program tried to emulate. It would be interesting
to know when (=with which deal.II release) this stopped working, if it ever
worked. Either way, a patch is here:
https://github.com/dealii/code-gallery/pull/217
Best
Wolfgang
--
------------------------------------------------------------------------
Wolfgang Bangerth email: [email protected]
www: http://www.math.colostate.edu/~bangerth/
--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see
https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/dealii/8fac1282-681f-4409-84b3-15997aa27301%40colostate.edu.