Return
Segment-Based May-Happen-in-Parallel Analysis for C Programs
DOI:10.1002/cpe.70203.png)
Abstract
En 中文
May-Happen-in-Parallel (MHP) analysis serves as the basis for many concurrency bugs analyses. Inadequate handling of the coupling between locks and thread creation statements, as well as inter-procedural locks, can lead to a loss of precision in MHP analysis. To address these issues, this paper proposes a new MHP analysis for C that operates at the segment granularity rather than individual statements. By constructing a Segmented Thread-sensitive Control Flow Graph (STCFG) for a program, statements are grouped into different segments. Context information is added to these segments to capture the semantics of Pthreads operations, thereby identifying Happens-Before (HB) and conflict relationships between segments. To compute MHP information for statement pairs, it is sufficient to examine the relationship between segments to infer the relationship between statements. We implement our algorithm in LLVM and evaluate it using eight test cases as well as four programs from the SPLASH2 benchmark suite. Preliminary results show that our method provides higher precision and achieves higher efficiency.
Keywords:
MHP
multi-threading
Pthreads
static analysis
Journal
C
IF:
1.5
Papers:
106
Citations:
5.8K
Organization
No organization information available

