ACM Home Page
Please provide us with feedback. Feedback
Symbolic array dataflow analysis for array privatization and program parallelization
Full text HtmlHtml (3 KB),  PdfPdf (377 KB)
Source Conference on High Performance Networking and Computing archive
Proceedings of the 1995 ACM/IEEE conference on Supercomputing (CDROM) table of contents
San Diego, California, United States
Article No. 47  
Year of Publication: 1995
ISBN:0-89791-816-9
Authors
Junjie Gu  Department of Computer Science, University of Minnesota, Minneapolis MN
Zhiyuan Li  Department of Computer Science, University of Minnesota, 200 Union Street S.E. Minneapolis, MN
Gyungho Lee  Department of Electrical Engineering, University of Minnesota, 200 Union Street S.E. Minneapolis, MN
Sponsors
IEEE-CS : Computer Society
SIGARCH: ACM Special Interest Group on Computer Architecture
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 5,   Downloads (12 Months): 21,   Citation Count: 14
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

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

ABSTRACT

Array dataflow information plays an important role for successful automatic parallelization of Fortran programs. This paper proposes a powerful symbolic array dataflow analysis to support array privatization and loop parallelization for programs with arbitrary control flow graphs and acyclic call graphs. Our scheme summarizes array access information using guarded array regions and propagates such regions over a Hierarchical Supergraph (HSG). The use of guards allows us to use the information in IF conditions to sharpen the array dataflow analysis and thereby to handle difficult cases which elude other existing techniques. The guarded array regions retain the simplicity of set operations for regular array regions in common cases, and they enhance regular array regions in complicated cases by using guards to handle complex symbolic expressions and array shapes. Scalar values that appear in array subscripts and loop limits are substituted on the fly during the array information propagation, which disambiguates the symbolic values precisely for set operations. We present efficient algorithms that implement our scheme. Initial experiments of applying our analysis to Perfect Benchmarks show promising results of improved array privatization.


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
 
5
 
6
M. Berry, D. Chen, P. Koss, D. Kuck, and S. Lo. the Perfect club benchmarks: Effective performance evaluation of supercomputers. Technical Report CSRD-827, University of Illinois, Urbana, IL, May 1989.
 
7
 
8
 
9
William Blume and Rudolf Eigenmann. The range test: A dependence test for non-linear expressions. Technical Report CSRD-Report-1345, Center for Supercomputing Research and Development, University of Illinois at Urbana-Champaign, April 1994.
 
10
D. Callahan and K. Kennedy. Analysis of interprocedural side effects in a parallel programming environment. In ACM SIGPLAN '86 Symp. Compiler Construction, pages 162-175, June 1986.
11
 
12
R. Eigenmann, J. Hoe inger, G. Jaxon, Z. Li, and D. Padua. Experience with Fortran program restructuring for Cedar multiprocessor. Concurrency - Experience and Practice, 5(7):553-573, October 1993.
 
13
R. Eigenmann, J. Hoe inger, Z. Li, and D. Padua. Experience in the automatic parallelization of four Perfect benchmark programs. In Lecture Notes in Computer Science, 589. Springer-Verlag, 1992.
 
14
Paul Feautrier. Data ow analysis of array and scalar references. International Journal of Parallel Programming, 2(1):23-53, February 1991.
15
 
16
 
17
18
 
19
 
20
 
21
22
 
23
Z. Li. Propagating symbolic relations on an interprocedural and hierarchical control ow graph. Technical Report CSci-93-87, Computer Science Department, University of Minnesota, Minneapolis, MN, 1993.
 
24
 
25
26
27
 
28
29
30
31
 
32
Carl Rosene. Incremental dependence analysis. Technical Report CRPC-TR90044, PhD thesis, Computer Science Department, Rice University, March 1990.
 
33
34
 
35
Remi Triolet. Interprocedural analysis for program restructuring with parafrase. Technical Report CSRD Rpt. No.538, Center for Supercomputing Research and Development, University of Illinois at Urbana-Champaign, December 1985.
 
36
 
37

CITED BY  14

Collaborative Colleagues:
Junjie Gu: colleagues
Zhiyuan Li: colleagues
Gyungho Lee: colleagues