ACM Home Page
Please provide us with feedback. Feedback
An array operation synthesis scheme to optimize Fortran 90 programs
Full text PdfPdf (1.15 MB)
Source Principles and Practice of Parallel Programming archive
Proceedings of the fifth ACM SIGPLAN symposium on Principles and practice of parallel programming table of contents
Santa Barbara, California, United States
Pages: 112 - 122  
Year of Publication: 1995
ISBN:0-89791-701-6
Also published in ...
Authors
Gwan-Hwan Hwang  Department of Computer Science, National Tsing-Hua University, Taiwan
Jenq Kuen Lee  Department of Computer Science, National Tsing-Hua University, Taiwan
Dz-Ching Ju  Hewlett-Packard Company, Cupertino, CA
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 5,   Downloads (12 Months): 47,   Citation Count: 7
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/209936.209949
What is a DOI?

ABSTRACT

An increasing number of programming languages, such as Fortran 90 and APL, are providing a rich set of intrinsic array functions and array expressions. These constructs which constitute an important part of data parallel languages provide excellent opportunities for compiler optimizations. In this paper, we present a new approach to combine consecutive data access patterns of array constructs into a composite access function to the source arrays. Our scheme is based on the composition of access functions, which is similar to a composition of mathematic functions. Our new scheme can handle not only data movements of arrays of different numbers of dimensions and segmented array operations but also masked array expressions and multiple sources array operations. As a result, our proposed scheme is the first synthesis scheme which can synthesize Fortran 90 RESHAPE, EOSHIFT, MERGE, and WHERE constructs together. Experimental results show speedups from 1.21 to 2.95 for code fragments from real applications on a Sequent multiprocessor machine by incorporating the proposed optimizations.


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
Dz-ching Ju, Chuan-lin Wu, and Paul Carini, The Synthesis of Array Functions and its Use in Parallel Computation, Proceeding of International Conference on Parallel Processing, pp. 293-296, 1992.
 
6
7
 
8
C. L. Liu. Elements of Discrete mathematics, Second Edition, 1985.
 
9
A. Mohamer, G. Fox, G. Laszewski, M. Parashar, T. Haupt, K. Mills, Y. Lu, N. Lin, N. and Yeh. Applications Benchmark Set for Fortran-D and Hzgh Performance Fortran, Technical Report SCCS327, NPAC, Syracuse University.
 
10
J.R. Rice, J. Jing. Problems to Test Parallel and Vector Languages, Purdue University Tech. Rep. CSD-TR- 1016, 1990.
 
11
High Performance Fortran Forum, High Performance Fortran Language Specification, Technical Report CRPC-TR92225, Rice University, Houston, TX, 1993.
12


Collaborative Colleagues:
Gwan-Hwan Hwang: colleagues
Jenq Kuen Lee: colleagues
Dz-Ching Ju: colleagues