Hi all,
I have managed to install deal.II-6.3.pre (revision 19078) with PETSC,
Trilinos, Metis and threading on two separate Ubuntu systems. Once
installed I tested some of the examples to verify that the libraries
were working. I found that step-1 and steps which use MPI ran (I
tested step-17 and step-31) but steps which did not use MPI failed
(specifically step-2 and step-22). The specific order of the stack
trace is different in both cases, but I have noticed that both
originate in the Subscriptor deconstructor and that both involve that
ConstraintMatrix class.
In step-2 I have traced the problem to the line:
DoFTools::make_sparsity_pattern (dof_handler, sparsity_pattern);
If this line and any depending on it are run the code fails with the
error below, if it is commented out the code completes. Noting that
the error involves the ConstraintMatrix class, and that
make_sparsity_pattern takes a ConstraintMatrix as a default parameter,
I tested the following lines in the step-2 class, just before
make_sparsity_pattern is called.
std::cout << "start of ConstraintMatrix scope\n"; // comment 1
ConstraintMatrix test_constraint_matrix;
std::cout << "end of ConstraintMatrix scope\n"; // comment 2
These lines give the same error as listed below, comment 1 runs but
comment 2 is not printed.
On one of the systems I have 6.2.1 installed, with PETSC and Trilinos
and do not see these errors. Finally, the Trilinos install passed all
tests, and disabling Trilinos by setting USE_CONTRIB_TRILINOS = no
when not running MPI programs does not seem to be an option since
linking fails.
I see that the ConstraintMatrix class has changed quite a lot since
6.2.1, anything that could have caused this or is the problem likely
to be somewhere else?
When installing with Trilinos I got warnings from deal.II configure
script of "WARNING: ml_MultiLevelPreconditioner.h: present but cannot
be compiled" and it requested that I report this. I paste the full
warnings it gave at the bottom of the email.
Thanks,
Michael
******************* Step-2 errors ********************************
mich...@cds3tea:~/lib/deal.II-svn/examples/step-2$ ./step-2
*** An error occurred in MPI_comm_size
*** before MPI was initialized
*** MPI_ERRORS_ARE_FATAL (goodbye)
[cds3tea:21804] Abort before MPI_INIT completed successfully; not able
to guarantee that all other processes were killed!
--------------------------------------------------------
An error occurred in line <103> of file <source/subscriptor.cc> in function
virtual dealii::Subscriptor::~Subscriptor()
The violated condition was:
counter == 0
The name and call sequence of the exception was:
ExcInUse (counter, object_info->name(), infostring)
Additional Information:
Object of class N6dealii4FE_QILi2ELi2EEE is still used by 1 other objects.
from Subscriber N6dealii10DoFHandlerILi2ELi2EEE
Stacktrace:
-----------
#0 /home/michael/lib/deal.II-svn/lib/libbase.g.so.6.3.pre:
dealii::Subscriptor::~Subscriptor()
#1 /home/michael/lib/deal.II-svn/lib/libdeal_II_2d.g.so.6.3.pre:
dealii::FiniteElement<2, 2>::~FiniteElement()
#2 ./step-2: dealii::FE_Poly<dealii::TensorProductPolynomials<2>, 2,
2>::~FE_Poly()
#3 ./step-2: dealii::FE_Q<2, 2>::~FE_Q()
#4 ./step-2 [0x805ad96]: ./step-2 [0x805ad96]
#5 /lib/tls/i686/cmov/libc.so.6: exit
#6 /usr/lib/libmpi.so.0 [0xb395fa26]: /usr/lib/libmpi.so.0 [0xb395fa26]
#7 /usr/lib/libmpi.so.0 [0xb3951804]: /usr/lib/libmpi.so.0 [0xb3951804]
#8 /usr/lib/libmpi.so.0: ompi_mpi_errors_are_fatal_comm_handler
#9 /usr/lib/libmpi.so.0: MPI_Comm_size
#10 /home/michael/lib/trilinos-9.0.3/LINUX_OPENMPI_INSTALL/lib/libepetra.so:
Epetra_MpiCommData::Epetra_MpiCommData(ompi_communicator_t*&)
#11 /home/michael/lib/trilinos-9.0.3/LINUX_OPENMPI_INSTALL/lib/libepetra.so:
Epetra_MpiComm::Epetra_MpiComm(ompi_communicator_t*)
#12 /home/michael/lib/deal.II-svn/lib/liblac.g.so.6.3.pre:
dealii::TrilinosWrappers::VectorBase::VectorBase()
#13 /home/michael/lib/deal.II-svn/lib/liblac.g.so.6.3.pre:
dealii::TrilinosWrappers::MPI::Vector::Vector()
#14 ./step-2: dealii::ConstraintMatrix::ConstraintMatrix()
#15 ./step-2: distribute_dofs(dealii::DoFHandler<2, 2>&)
#16 ./step-2: main
--------------------------------------------------------
Aborted
******************* Step-22 errors *******************************
mich...@cds3tea:~/lib/deal.II-svn/examples/step-22$ ./step-22
*** An error occurred in MPI_comm_size
*** before MPI was initialized
*** MPI_ERRORS_ARE_FATAL (goodbye)
[cds3tea:21838] Abort before MPI_INIT completed successfully; not able
to guarantee that all other processes were killed!
--------------------------------------------------------
An error occurred in line <103> of file <source/subscriptor.cc> in function
virtual dealii::Subscriptor::~Subscriptor()
The violated condition was:
counter == 0
The name and call sequence of the exception was:
ExcInUse (counter, object_info->name(), infostring)
Additional Information:
Object of class N6dealii16StraightBoundaryILi2ELi2EEE is still used by
255 other objects.
from Subscriber unknown subscriber
Stacktrace:
-----------
#0 /home/michael/lib/deal.II-svn/lib/libbase.g.so.6.3.pre:
dealii::Subscriptor::~Subscriptor()
#1 /home/michael/lib/deal.II-svn/lib/libdeal_II_2d.g.so.6.3.pre:
dealii::Boundary<2, 2>::~Boundary()
#2 /home/michael/lib/deal.II-svn/lib/libdeal_II_2d.g.so.6.3.pre:
dealii::StraightBoundary<2, 2>::~StraightBoundary()
#3 /home/michael/lib/deal.II-svn/lib/libdeal_II_2d.g.so.6.3.pre
[0xb775ec6a]: /home/michael/lib/deal.II-svn/lib/libdeal_II_2d.g.so.6.3.pre
[0xb775ec6a]
#4 /lib/tls/i686/cmov/libc.so.6: __cxa_finalize
#5 /home/michael/lib/deal.II-svn/lib/libdeal_II_2d.g.so.6.3.pre
[0xb7295e03]: /home/michael/lib/deal.II-svn/lib/libdeal_II_2d.g.so.6.3.pre
[0xb7295e03]
#6 /home/michael/lib/deal.II-svn/lib/libdeal_II_2d.g.so.6.3.pre
[0xb7b96eac]: /home/michael/lib/deal.II-svn/lib/libdeal_II_2d.g.so.6.3.pre
[0xb7b96eac]
#7 /lib/ld-linux.so.2 [0xb7f73fcf]: /lib/ld-linux.so.2 [0xb7f73fcf]
#8 /lib/tls/i686/cmov/libc.so.6: exit
#9 /usr/lib/libmpi.so.0 [0xb2a84a26]: /usr/lib/libmpi.so.0 [0xb2a84a26]
#10 /usr/lib/libmpi.so.0 [0xb2a76804]: /usr/lib/libmpi.so.0 [0xb2a76804]
#11 /usr/lib/libmpi.so.0: ompi_mpi_errors_are_fatal_comm_handler
#12 /usr/lib/libmpi.so.0: MPI_Comm_size
#13 /home/michael/lib/trilinos-9.0.3/LINUX_OPENMPI_INSTALL/lib/libepetra.so:
Epetra_MpiCommData::Epetra_MpiCommData(ompi_communicator_t*&)
#14 /home/michael/lib/trilinos-9.0.3/LINUX_OPENMPI_INSTALL/lib/libepetra.so:
Epetra_MpiComm::Epetra_MpiComm(ompi_communicator_t*)
#15 /home/michael/lib/deal.II-svn/lib/liblac.g.so.6.3.pre:
dealii::TrilinosWrappers::VectorBase::VectorBase()
#16 /home/michael/lib/deal.II-svn/lib/liblac.g.so.6.3.pre:
dealii::TrilinosWrappers::MPI::Vector::Vector()
#17 ./step-22: dealii::ConstraintMatrix::ConstraintMatrix()
#18 ./step-22: StokesProblem<2>::StokesProblem(unsigned int)
#19 ./step-22: main
--------------------------------------------------------
Aborted
******************* Config warnings *****************************
/home/michael/lib/trilinos-9.0.3/LINUX_OPENMPI_INSTALL/include/EpetraExt_config.h:13:1:
warning: "F77_FUNC_" redefined
In file included from
/home/michael/lib/trilinos-9.0.3/LINUX_OPENMPI_INSTALL/include/Teuchos_ConfigDefs.hpp:73,
from
/home/michael/lib/trilinos-9.0.3/LINUX_OPENMPI_INSTALL/include/Teuchos_ParameterListExceptions.hpp:33,
from
/home/michael/lib/trilinos-9.0.3/LINUX_OPENMPI_INSTALL/include/Teuchos_ParameterList.hpp:37,
from
/home/michael/lib/trilinos-9.0.3/LINUX_OPENMPI_INSTALL/include/ml_MultiLevelPreconditioner.h:81,
from conftest.cpp:60:
/home/michael/lib/trilinos-9.0.3/LINUX_OPENMPI_INSTALL/include/Teuchos_config.h:16:1:
warning: this is the location of the previous definition
configure:13874: $? = 0
configure:13888: result: yes
configure:13901: WARNING: ml_MultiLevelPreconditioner.h: present but
cannot be compiled
configure:13903: WARNING: ml_MultiLevelPreconditioner.h: check for
missing prerequisite headers?
configure:13905: WARNING: ml_MultiLevelPreconditioner.h: see the
Autoconf documentation
configure:13907: WARNING: ml_MultiLevelPreconditioner.h: section
"Present But Cannot Be Compiled"
configure:13909: WARNING: ml_MultiLevelPreconditioner.h: proceeding
with the preprocessor's result
configure:13911: WARNING: ml_MultiLevelPreconditioner.h: in the
future, the compiler will take precedence
configure:13921: checking for ml_MultiLevelPreconditioner.h
configure:13930: result: yes
_______________________________________________
dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii