On 12/02/2016 08:48 PM, JxW wrote:
Thanks a lot for the helpful advice.
If I pass a custom max_num_threads to the constructor of mpi_init, then I get
the following behavior:
- Segmentation violation, when max_num_threads = 3, 4,
numbers::invalid_unsigned_int
- Normal execution, when max_num_threads = 1, 2, 5, 6, 7, 8, 9, 10
That is bizarre. I have never seen anything like this.
Is this using the TBB that comes with your operating system, or the one that
is bundled with deal.II? You can see this in the summary statement that is
produced at the end of the cmake run.
P.S.: My computer has a dual core CPU with hyper-threading, so in /proc/cpuinfo
it shows 4 processors.
When running in GDB, all segmentation violation cases above give the same
message,
which points to the same position where the invalid read happens according to
valgrind:
Thread 1 "test" received signal SIGSEGV, Segmentation fault.
tbb::internal::generic_scheduler::allocate_task (this=this@entry=0x7fffb8736600,
number_of_bytes=number_of_bytes@entry=8, parent=parent@entry=0x0,
context=context@entry=0x7ffff1e5c0a0 <tbb::internal::the_dummy_context>)
at ../../src/tbb/scheduler.cpp:315
315 ../../src/tbb/scheduler.cpp: No such file or directory.
But what is the backtrace? Where is this function called from? You should be
able to see this in a debugger.
Best
W.
--
------------------------------------------------------------------------
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].
For more options, visit https://groups.google.com/d/optout.