Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/158511.158644acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free access

Static single assignment for explicitly parallel programs

Published: 01 March 1993 Publication History

Abstract

We describe and prove algorithms to convert programs which use the Parallel Computing Forum Parallel Sections construct into Static Single Assignment (SSA) form. This proces allows compilers to apply classical scalar optimization algorithms to explicitly parallel programs. To do so, we must define what the concept of dominator and dominance frontier mean in parallel programs. We also describe how we extend SSA form to handle parallel updates and still preserve the SSA properties.

References

[1]
Frances Allen, Michael Burke, Philippe Charles, Ron Cytron, and Jeanne Ferrante. An overview of the PTRAN analysis system for multiprocessing. J. Parallel and Dislributed Computing, 5(5):617- 640, October 1988.
[2]
B. Alpern, M.N. Wegman, and F.K. Zadeck. Detecting equality of variables in programs. In Conf. Record 15th Annual ACM Syrup. Principles of Programming Languages {8}, pages 1-11.
[3]
Per Brinch Hansen. Operating Systems Principles. Automatic Computation. Prentice-Hall, 1973.
[4]
Ron Cytron, Jeanne Ferrante, Barry K. Rosen, Mark N. Wegman, and F. Kenneth Zadeck. Efficiently computing static single assignment form and the control dependence graph. A CM Trans. on Programming Languages and Systems, 13(4):451-490, October 1991.
[5]
Samuel P. Midkiff and David A. Padua. Issues in the optimization of parallel programs. In Proc. 1990 International Conf. on Parallel Processing, volume II, pages 105-113, St. Charles, IL, August 1990. Penn State Press.
[6]
Samuel P. Midkiff, David A. Padua, and Ron Cytron. Compiling programs with user parallelism. In David Gelernter, Alexandru Nicolau, and David A. Padua, editors, Languages and Compilers for Parallel Computing, Research Monographs in Parallel and Distributed Computing, pages 402-422. MIT Press, Boston, 1990.
[7]
Parallel Computing Forum. PCF Parallel Fortran extensions. Fortran Forum, 10(3), September 1991. (special issue).
[8]
Conf. Record 15~h Annual A CM Syrup. Principles of Programming Languages, San Diego, CA, January 1988.
[9]
B.K. Rosen, M.N. Wegman, and F.K. Zadeck. Global value numbers and redundant computations, in Conf. Record 15th Annual ACM Syrup. Principles of Programming Languages {8}, pages 12-27.
[10]
Harini Srinivasan. Analyzing programs with explicit parallelism. M.S. thesis 91-TH-006, Oregon Graduate Institute, Dept. of Computer Science and Engineering, July 1991.
[11]
Harini Srinivasan and Michael Wolfe. Analyzing programs with explicit parallelism. In U tpal Banerjee, David Gelernter, Alexandru Nicolau, and David A. Padua, editors, Languages and Compzlers for Parallel Computing, number 589 in Lecture Notes in Computer Science, pages 403- 419. Springer-Verlag, 1992.
[12]
Mark N. Wegman and F. Kenneth Zadeck. Constant propagation with conditional branches. A CM Trans. on Programming Languages and Systems, 13(2):181-210, April 1991.
[13]
Michael Wolfe. Beyond induction variables. In Proc. A CM SIGPLAN '92 Conference on Programming Language Design and Implementation, pages 162-174, San Francisco, June 1992.
[14]
Michael Wolfe and Harini Srinivasan. Data structures for optimizing programs with explicit parallelism. In Proc. First International Conference of the Austrian Center for Parallel Computation, Salzburg, September 1991.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
POPL '93: Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
March 1993
510 pages
ISBN:0897915607
DOI:10.1145/158511
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 March 1993

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

POPL93

Acceptance Rates

POPL '93 Paper Acceptance Rate 39 of 199 submissions, 20%;
Overall Acceptance Rate 824 of 4,130 submissions, 20%

Upcoming Conference

POPL '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)34
  • Downloads (Last 6 weeks)9
Reflects downloads up to 15 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Intermediate Representations for Explicitly Parallel ProgramsACM Computing Surveys10.1145/345229954:5(1-24)Online publication date: 25-May-2021
  • (2019)TapirACM Transactions on Parallel Computing10.1145/33656556:4(1-33)Online publication date: 17-Dec-2019
  • (2019)TapirXLA: Embedding Fork-Join Parallelism into the XLA Compiler in TensorFlow Using Tapir2019 IEEE High Performance Extreme Computing Conference (HPEC)10.1109/HPEC.2019.8916312(1-8)Online publication date: Sep-2019
  • (2017)TapirACM SIGPLAN Notices10.1145/3155284.301875852:8(249-265)Online publication date: 26-Jan-2017
  • (2017)TapirProceedings of the 22nd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/3018743.3018758(249-265)Online publication date: 26-Jan-2017
  • (2013)Online feedback-directed optimizations for parallel Java codeACM SIGPLAN Notices10.1145/2544173.250951848:10(713-728)Online publication date: 29-Oct-2013
  • (2013)Online feedback-directed optimizations for parallel Java codeProceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications10.1145/2509136.2509518(713-728)Online publication date: 29-Oct-2013
  • (2013)Static Analysis Approach for Defect Detection in Multithreaded C/C++ ProgramsSoftware Engineering for Resilient Systems10.1007/978-3-642-40894-6_14(169-183)Online publication date: 2013
  • (2013)Detection of Probabilistic Dangling References in Multi-core Programs Using Proof-Supported ToolsComputational Science and Its Applications – ICCSA 201310.1007/978-3-642-39640-3_38(516-530)Online publication date: 2013
  • (2012)On a Technique for Transparently Empowering Classical Compiler Optimizations on Multithreaded CodeACM Transactions on Programming Languages and Systems10.1145/2220365.222036834:2(1-42)Online publication date: 1-Jun-2012
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media