aboutsummaryrefslogtreecommitdiff
path: root/Carpet/LoopControl/src/loopcontrol.cc
diff options
context:
space:
mode:
Diffstat (limited to 'Carpet/LoopControl/src/loopcontrol.cc')
-rw-r--r--Carpet/LoopControl/src/loopcontrol.cc15
1 files changed, 11 insertions, 4 deletions
diff --git a/Carpet/LoopControl/src/loopcontrol.cc b/Carpet/LoopControl/src/loopcontrol.cc
index 391757162..c4a2f6be1 100644
--- a/Carpet/LoopControl/src/loopcontrol.cc
+++ b/Carpet/LoopControl/src/loopcontrol.cc
@@ -823,13 +823,20 @@ void lc_control_init(lc_control_t *restrict const control,
}
// Allocate fine thread communicators
- if (int(lc_fine_thread_comm.size()) < get_num_coarse_threads()) {
+ int ftcs, gnct;
+ if ((ftcs=int(lc_fine_thread_comm.size())) < (gnct=get_num_coarse_threads())) {
#pragma omp barrier
+ if (not ((int(lc_fine_thread_comm.size()) < get_num_coarse_threads()))) {
+#pragma omp critical
+ cout << "thread: " << omp_get_thread_num() << " "
+ << "ftcs1=" << ftcs << " "
+ << "gnct1=" << gnct << " "
+ << "ftcs2=" << lc_fine_thread_comm.size() << " "
+ << "gnct2=" << get_num_coarse_threads() << "\n" << flush;
+ }
assert(int(lc_fine_thread_comm.size()) < get_num_coarse_threads());
#pragma omp master
- {
- lc_fine_thread_comm.resize(get_num_coarse_threads());
- }
+ lc_fine_thread_comm.resize(get_num_coarse_threads());
#pragma omp barrier
assert(int(lc_fine_thread_comm.size()) == get_num_coarse_threads());
}