LLOR: Automated Repair of OpenMP Programs
summary
LLOR is an automated repair tool for OpenMP C/C++ and Fortran programs that instruments LLVM IR, queries a data-race verifier (LLV), and uses Z3 with MaxSAT and a greedy minimal hitting set strategy to propose barrier or ordered placements. On 415 benchmark programs it reports 117 C/C++ cases with races and repairs 92, plus 15 worksharing kernels fixed via ordered regions; five C/C++ cases are not barrier-fixable, some cases time out or are unsupported by the verifier.
AI-written summary · about
chapters (10)
- 0:00LLOR and OpenMP repair
- 2:12Data races in OpenMP
- 6:58LLOR architecture
- 10:27Counter-example repair
- 14:42Parallel region repair
- 15:48Fixing worksharing for constructs
- 18:00Repair optimization
- 19:04Benchmark results
- 24:31Limitations and future
- 25:15Q&A
related talks
23mA Verified High-Performance Composable Object Library for Remote Direct Memory Access
22mDR.FIX: Automatically Fixing Data Races at Industry Scale
01h 04mDebugging data races
21mExact Loop Bound Analysis
14mOracle-Free Repair Synthesis for Floating-Point Programs
18mSound Static Data Race Verification for C: Is the Race Lost?
17mSSRD: Shapes and Summaries for Race Detection in Concurrent Data Structures
18mDiagnosing Performance Issues in Application-Defined Resources
