ACM Home Page
Please provide us with feedback. Feedback
On linearizing parallel code
Full text PdfPdf (827 KB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages table of contents
New Orleans, Louisiana, United States
Pages: 179 - 190  
Year of Publication: 1985
ISBN:0-89791-147-4
Authors
Jeanne Ferrante  IBM T. J. Watson Research Center, P.O. Box 218, Yorktown Heights, NY
Mary Mace  IBM T. J. Watson Research Center, P.O. Box 218, Yorktown Heights, NY
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): 10,   Downloads (12 Months): 30,   Citation Count: 15
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/318593.318636
What is a DOI?

ABSTRACT

We consider the problem of generating sequential code for programs written in a language which contains a Multiple GOTO operator, predicates and statements. This problem arises when compiling a parallel intermediate form (such as the PDG [3,4]) to run on a sequential machine; in a source-to-source FORTRAN translator when vectorization of a loop has failed; and when compiling logic designs written in a parallel design language for simulation on a sequential machine. It is easy to generate sequential code for this sort of parallel program if one allows either duplication of code or the insertion of guard variables at merge points; in fact, it is in general impossible without this addition. However, for a large class of parallel programs (such as those originally arising from sequential programs, even after some optimizations have been applied) it is possible to generate sequential code without duplication or the addition of guard variables. In this paper we present an efficient algorithm which will generate sequential code from a parallel program without duplication or additional guard variables for a large class of parallel programs.


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.

 
1
2
 
3
 
4
4. Ferrante, Jeanne, Ottenstein, Karl, and Warten, Joe D. The program dependence graph and its use in optimization. IBM Technical Report RC-10543 (June, 1984) 33 pages.
5
 
6
6. Ferrante, Jeanne. The program dependence graph as a basis for node splitting transformations. IBM Research Report RC 10542 June, 1984.
7
 
8
8. Gustafson, R. N. and Sparacio, F. J. IBM 3081 processor unit: Design considerations and design process. IBM Journal of Research and Development 26.1 (January, 1982) 12-21.
9
 
10

CITED BY  16

Collaborative Colleagues:
Jeanne Ferrante: colleagues
Mary Mace: colleagues