ACM Home Page
Please provide us with feedback. Feedback
Lazy array data-flow dependence analysis
Full text PdfPdf (1.44 MB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages table of contents
Portland, Oregon, United States
Pages: 311 - 325  
Year of Publication: 1994
ISBN:0-89791-636-0
Author
Vadim Maslov  Department of Computer Science, University of Maryland, College Park, MD
Sponsors
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 3,   Downloads (12 Months): 19,   Citation Count: 14
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/174675.177911
What is a DOI?

ABSTRACT

Automatic parallelization of real FORTRAN programs does not live up to users expectations yet, and dependence analysis algorithms which either produce too many false dependences or are too slow to contribute significantly to this. In this paper we introduce dataflow dependence analysis algorithm which exactly computes value-based dependence relations for program fragments in which all subscripts, loop bound and IF conditions are affine. Our algorithm also computes good affine approximations of dependence relations for non-affine program fragments. Actually, we do not know about any other algorithm which can compute better approximations. And our algorithm is efficient too, because it is lazy. When searching for write statements that supply values used by a given read statement, it starts with statements which are lexicographically close to the read statement in iteration space. Then if some of the read statement instances are not “satisfied” with these close writes, the algorithm broadens its search scope by looking into more distant writes. The search scope keeps broadening until all read instances are satisfied or no write candidates are left. We timed our algorithm on several benchmark programs and the timing results suggest that our algorithm is fast enough to be used in commercial compilers—it usually takes 5 to 15 percent of f77 -02 compilation time to analyze a program. Most programs in the 100-line range take less than 1 second to analyze on a SUN SparcStation IPX.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

AK87
AL93
 
B+89
M. Berry et al. The PERFECT Club benchmarks: Effective performance evaluation of supercomputers. International Journal of Supercomputing Applications, 3(3):5--40, March 1989.
 
Blu92
William Joseph Blume. Success And Limitations in Automatic Parallelization of the Perfect BenchmarksTM Programs. PhD thesis, Dept. of Computer Science, U. of Illinois at Urbana- Champaign, 1992. M.S. Thesis.
 
EHLP91
 
Fea88a
P. Feautrier. Parametric integer prograanming. Operationnelle/Operations Research, 22(3):243- 268, September 1988.
Fea88b
 
Fea91
Paul Feautder. Dataflow analysis of array and scalar references. International Journal o.f Parallel Programming, 20(1), February 1991.
 
Fea92a
Paul Feantrier. Some efficient solutions to the a~ne scheduling problem, Part I, Onedimensional time. Technical Report 92.28, IBP/MASI, April 1992.
 
Fea92b
Paul Feantrier. Some efficient solutions to the affine scheduling problem, Part II, Multidimensional time. Technical Report 92.78, IBP/MASI, Oct 1992.
 
HP91
Mohammand Reza Haghighat and Costantine D. Polychronopoulos. Symbolic dependence analysis for high-performance parallelizing compilers, in Advances in Languages and Compilers for Parallel Processing, pages 310-330. The MIT Press, 1991.
 
KP93
LT88
MAL93
 
May92
Dror Eliezer Maydan. Accurate Analysis of Array References. PhD thesis, Computer Systems Laboratory, Stanford U., September 1992.
MHL91
 
Mur71
Pug91
Pug92
 
PW92
William Pugh and David Wonnacott. Going beyond integer programming with the Omega test to eliminate false data dependences. Technical Report CS-TR-2993, Dept. of Computer Science, University of Maryland, College Park, December 1992. An earlier version of this paper appeared at the SIGPLAN PLDI'92 conference.
 
PW93a
 
PW93b
 
Voe92a
 
Voe92b
Valentin V. Voevodin. Theory and practice of sequential programs parallelism investigation. Programmirovaniye (Programming and Computer Software), March 1992.
 
Wol82
Wol92

CITED BY  14