| Regions: an abstraction for expressing array computation |
| Full text |
Pdf
(832 KB)
|
| Source
|
International Conference on APL
archive
Proceedings of the conference on APL '99 : On track to the 21st century: On track to the 21st century
table of contents
Scranton, Pennsylvania, United States
Pages: 41 - 49
Year of Publication: 1999
ISBN:1-58113-126-7
Also published in ...
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 12, Downloads (12 Months): 19, Citation Count: 7
|
|
|
ABSTRACT
Most array languages, including Fortran 90, Matlab, and APL, provide support for referencing arrays by extending the traditional array subscripting construct found in scalar languages. We present an alternative to subscripting that exploits the concept of regions---an index set representation that can be named, manipulated with high-level operators, and syntactically separated from array references. This paper develops the concept of region-based programming and describes its benefits in the context of an idealized array language called RL. We show that regions simplify programming, reduce the likelihood of errors, and enable code reuse. Furthermore, we describe how regions accentuate the locality of array expressions and how this locality is important when targeting parallel computers. We also show how the concepts of region-based programming have been used in ZPL, a fully-implemented practical parallel programming language in use by scientists and engineers. In addition, we contrast region-based programming with the array reference constructs of other array languages.
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
|
Jeanne C. Adams, Walter S. Brainerd, Jean T. Martin, Brian T. Smith, and Jerrold L. Wagener. Fortran 90 Handbook. McGraw-Hill, 1992.
|
| |
2
|
Thomas Brtiunl. ParaUaxis-iII: A language for structured data-parallel programming. In Proceedings of the IEEE First International Conference on Algorithms and Architectures for Parallel Processing, pages 43-52. IEEE, April 1995.
|
| |
3
|
B. Chamberlain , S. Choi , E. Lewis , C. Lin , L. Snyder , W. Weathersby, ZPL's WYSIWYG Performance Model, Proceedings of the High-Level Parallel Programming Models and Supportive Environments, p.50, March 30-April 03, 1998
|
| |
4
|
|
| |
5
|
|
| |
6
|
Duane Hanselman and Bruce Littlefield. Mastering MATLAB. Prentice-Hall, 1996.
|
| |
7
|
High Performance Fortran Forum. High Performance Fortran Langauge Specification, Version 2.0. January 1997.
|
| |
8
|
|
| |
9
|
S. C. Johnson and C. Mohler. Compiling MATLAB. In Proceedings of the USENIX Symposium on Very High Level Languages (VHLL), pages 119-27, Santa Fe, New Mexico, October 1994. USENIX Association.
|
| |
10
|
|
| |
11
|
|
| |
12
|
|
| |
13
|
|
| |
14
|
Luigi Semenzato and Paul Hilfinger. Arrays in FID1L. In Robert Grossman, editor, Symbolic Computation: Applications to Scientific Computing, pages 155-169. SIAM, 1989.
|
| |
15
|
|
| |
16
|
C* Programming Guide, Version 6.0.2. Thinking Machines Corporation, Cambridge, Massachusetts, June 1991.
|
CITED BY 7
|
|
|
|
|
|
|
|
|
|
|
Bradford L. Chamberlain , Sung-Eun Choi , E. Christopher Lewis , Calvin Lin , Lawrence Snyder , W. Derrick Weathersby, ZPL: A Machine Independent Programming Language for Parallel Computers, IEEE Transactions on Software Engineering, v.26 n.3, p.197-211, March 2000
|
|
|
|
|
|
|
|
|
|
|