Parallel inclusion-based points-to analysis

8 years 4 months ago
Parallel inclusion-based points-to analysis
Inclusion-based points-to analysis provides a good trade-off between precision of results and speed of analysis, and it has been incorporated into several production compilers including gcc. There is an extensive literature on how to speed up this algorithm using heuristics such as detecting and collapsing cycles of pointer-equivalent variables. This paper describes a complementary approach based on exploiting parallelism. Our implementation exploits two key insights. First, we show that inclusion-based points-to analysis can be formulated entirely in terms of graphs and graph rewrite rules. This exposes the amorphous data-parallelism in this algorithm and makes it easier to develop a parallel implementation. Second, we show that this graph-theoretic formulation reveals certain key properties of the algorithm that can be exploited to obtain an efficient parallel implementation. Our parallel implementation achieves a scaling of up to 3x on a 8-core machine for a suite of ten large C p...
Mario Méndez-Lojo, Augustine Mathew, Keshav
Added 29 Jan 2011
Updated 29 Jan 2011
Type Journal
Year 2010
Authors Mario Méndez-Lojo, Augustine Mathew, Keshav Pingali
Comments (0)