DocumentCode
2833057
Title
An Empirical Study of Iterative Data-Flow Analysis
Author
Cooper, Keith D. ; Harvey, Timothy J. ; Kennedy, Ken
Author_Institution
Dept. of Comput. Sci., Rice Univ., Houston, TX
fYear
2006
fDate
Nov. 2006
Firstpage
266
Lastpage
276
Abstract
The iterative algorithm is widely used to solve instances of data-flow analysis problems. The algorithm is attractive because it is easy to implement and robust in its behavior. The theory behind the iterative algorithm establishes a set of conditions where the algorithm runs in at most d(G)+3 passes over the graph - a round-robin algorithm, running a "rapid" framework, on a reducible graph (Kam and Ulman, 1976). Fortunately, these restrictions encompass many practical analyses used in code optimization. Even when the rapid restrictions are not met, the iterative algorithm still terminates and produces correct results for a broad class of problems. Given the ubiquity of the iterative algorithm, it is important for compiler writers to understand the performance tradeoffs of different implementations of the algorithm. This paper lays out a number of different data structures to speed up the iterative algorithm using a worklist approach and shows carefully designed experiments using three different iteration-based analyses. Our experience shows not only that the worklist algorithm is significantly faster than the round-robin approach, but that this advantage can be reversed if mistakes are made in the worklist implementation
Keywords
data flow analysis; data flow graphs; iterative methods; code optimization; iterative algorithm; iterative data-flow analysis; reducible graph; round-robin algorithm; Algorithm design and analysis; Computer science; Data analysis; Data structures; Iterative algorithms; Pathology; Performance analysis; Permission; Robustness; Round robin;
fLanguage
English
Publisher
ieee
Conference_Titel
Computing, 2006. CIC '06. 15th International Conference on
Conference_Location
Mexico City
Print_ISBN
0-7695-2708-6
Type
conf
DOI
10.1109/CIC.2006.22
Filename
4023820
Link To Document