Abstract Transformers for Thread Correlation Analysis
Abstract Transformers for Thread Correlation Analysis
复制标题
用于线程相关性分析的抽象变压器
DOI:
10.1007/978-3-642-10672-9_5
复制
发表时间:
2009
期刊:
影响因子:
--
通讯作者:
M. Sagiv
中科院分区:
文献类型:
--
作者:
M. Segalov;T. Lev;R. Manevich;Ramalingam Ganesan;M. Sagiv
We present a new technique for speeding up static analysis of (shared memory) concurrent programs. We focus on analyses that compute thread correlations : such analyses infer invariants that capture correlations between the local states of different threads (as well as the global state). Such invariants are required for verifying many natural properties of concurrent programs.
Tracking correlations between different thread states, however, is very expensive. A significant factor that makes such analysis expensive is the cost of applying abstract transformers. In this paper, we introduce a technique that exploits the notion of footprints and memoization to compute individual abstract transformers more efficiently.
We have implemented this technique in our concurrent shape analysis framework. We have used this implementation to prove properties of fine-grained concurrent programs with a shared, mutable, heap in the presence of an unbounded number of objects and threads. The properties we verified include memory safety, data structure invariants, partial correctness, and linearizability. Our empirical evaluation shows that our new technique reduces the analysis time significantly (e.g., by a factor of 35 in one case).