Abstract
For any two statements in a parallel program, S i and S j , S i is said to precede S j if the execution of S j implies that S i must have already executed across all possible execution orders. There are many uses for precedence information for parallel programs, including program debugging and program optimization. The problem of finding exact precedence information is Co-NP-Hard [5]. Existing approaches to compute a conservative approximation to the precedence information at compile time are very expensive. In this paper, we present a more efficient algorithm to compute precedence that exploits known properties of sequential and parallel programs. In sequential programs, the precedence relation is the same as the dominance relation. We use this, and other information, to develop a more efficient algorithm.
This work supported in part by an IBM Graduate Fellowship
Preview
Unable to display preview. Download preview PDF.
References
A. V. Aho, R. Sethi, and J. D. Ullman. Compilers: Principles, Techniques, and Tools. Addison-Wesley, Reading, MA, 1986.
Vasanth Balasundaram and Ken Kennedy. Compile-time detection of race conditions in a parallel program. In Proc. 3rd International Conference on Supercomputing, pages 175–185, June 1989.
Per Brinch Hansen. Operating Systems Principles, pages 57–59. Automatic Computation. Prentice-Hall, 1973.
G. Bristow, C. Drey, B. Edwards, and W. Riddle. Anomaly detection in concurrent programs. In Fourth Intl. Conf. on Software Eng., pages 265–273, 1979.
D. Callahan and J. Subhlok. Static Analysis of low-level synchronization. In Proc. of the ACM SIGPLAN and SIGOPS Workshop on Parallel and Distributed Debugging [14], pages 100–111.
David Callahan, Ken Kennedy, and Jaspal Subhlok. Analysis of event synchronization in a parallel programming tool. In Second ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming [15], pages 21–30.
Anne Dinning and Edith Schonberg. An empirical comparison of monitoring algorithms for access anomaly detection. In Second ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming [15], pages 1–10.
Perry Emrath, Sanjoy Ghosh, and David A. Padua. Event synchronization analysis for debugging parallel programs. In Proc. Supercomputing 89, pages 580–588, Reno, NV, November 1989. IEEE Computer Society Press.
Perry Emrath and David Padua. Automatic detection of nondeterminacy in parallel programs. In PDD88 [14], pages 89–99.
Dirk Grunwald and Harini Srinivasan. Data flow equations for explicitly parallel programs. In Conf. Record 4th ACM Symp. Principles and Practices of Parallel Programming, San Diego, California, May 1993.
IBM Corporation, Kingston, NY. Parallel FORTRAN Language and Library Reference, 1988.
Robert Netzer. Race Condition Detection for Debugging of Shared-Memory Parallel Programs. PhD thesis, University of Wisconsin-Madison, 1991.
Parallel Computing Forum. PCF Parallel FORTRAN Extensions. FORTRAN Forum, 10(3), September 1991. (special issue).
Proc. of the ACM SIGPLAN and SIGOPS Workshop on Parallel and Distributed Debugging, Madison, WA, May 1988.
Second ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, Seattle, Washington, March 1990. ACM Press.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Grunwald, D., Srinivasan, H. (1994). Efficient computation of precedence information in parallel programs. In: Banerjee, U., Gelernter, D., Nicolau, A., Padua, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1993. Lecture Notes in Computer Science, vol 768. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57659-2_34
Download citation
DOI: https://doi.org/10.1007/3-540-57659-2_34
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57659-4
Online ISBN: 978-3-540-48308-3
eBook Packages: Springer Book Archive