clang-omp / clang

clang with OpenMP 3.1 and some elements of OpenMP 4.0 support
clang-omp.github.com
Other
91 stars 15 forks source link

Problem with schedule(dynamic) #83

Open w-bruns opened 2 years ago

w-bruns commented 2 years ago

Normaliz (https://github.com/Normaliz/Normaliz) has been parallelized with OpenMP for more than 10 years. Until fall 2020 we never encountered a problem with our gcc and clang builds. When a problem came up then, we unfortunately interpreted it incorrectly. But there is now significant evidence that clang++ since version 11 does not deal correctly with the function

void CandidateList<Integer>::reduce_by(CandidateList<Integer>& Reducers)

in source/libnormaliz/reduction.cpp. It contained the line

#pragma omp for schedule(dynamic)

After the removal of schedule(dynamic) the problem has fortunately disappeared.