TimingData currently uses UnsafePerThreadValue, which is the old implementation of PerThreadValue that suffers from occasional segfaults due to the actual number of threads being higher than ThreadManager::max_threads(). See PR https://github.com/dune-community/dune-xt-common/pull/89 for details.
Unfortunately, the new implementation of PerThreadValue initalizes the data in each thread lazily, which is not compatible with the current implemenation of TimingData.
We need to either change TimingData to work with the new PerThreadValue or without PerThreadValue at all, or we need to find a way to fix the old PerThreadValue implementation.
TimingData
currently usesUnsafePerThreadValue
, which is the old implementation ofPerThreadValue
that suffers from occasional segfaults due to the actual number of threads being higher thanThreadManager::max_threads()
. See PR https://github.com/dune-community/dune-xt-common/pull/89 for details. Unfortunately, the new implementation ofPerThreadValue
initalizes the data in each thread lazily, which is not compatible with the current implemenation ofTimingData
. We need to either changeTimingData
to work with the newPerThreadValue
or withoutPerThreadValue
at all, or we need to find a way to fix the oldPerThreadValue
implementation.