PRUNERS / archer

Archer, a data race detection tool for large OpenMP applications
https://pruners.github.io/archer
Apache License 2.0
62 stars 13 forks source link

Assertion fail on OpenMP runtime #51

Closed simoatze closed 6 years ago

simoatze commented 6 years ago

Two tests (task-two and parallel-reduction-nowait) are failing because of:

OMP: Error #13: Assertion failure at kmp_sched.cpp(85).

simoatze commented 6 years ago

@jprotze do you have any idea why?

jprotze commented 6 years ago

Yes, to provide a conforming implementation, we had to introduce compiler support. With old compilers, the flag is not set with a valid value, which results in the assert. There is a deprecated-workshare branch, that changes this assert to a warning about an outdated compiler.

dongahn commented 6 years ago

Can we cherry-pick that?

jprotze commented 6 years ago

I'm currently pushing this patch to upstream (I guess it will land in the next few days): https://reviews.llvm.org/D39890

Until then, you can simply use the branch for testing: https://github.com/OpenMPToolsInterface/LLVM-openmp/tree/deprecated-workshare

@simoatze : With that fix in upstream LLVM, you can switch to the upstream LLVM/OpenMP runtime.

simoatze commented 6 years ago

@jprotze Thanks! I tried the deprecated-workshare and it passes all the tests. I'll switch to the upstream LLVM/OpenMP and do more tests.

jprotze commented 6 years ago

The patch landed in upstream llvm/OpenMP about an hour ago.