ACM Home Page
Please provide us with feedback. Feedback
On defining application-specific high-level array operations by means of shape-invariant programming facilities
Full text PdfPdf (583 KB)
Source International Conference on APL archive
Proceedings of the APL98 conference on Array processing language table of contents
Rome, Italy
Pages: 32 - 38  
Year of Publication: 1998
ISBN:1-58113-181-X
Also published in ...
Author
Sven-Bodo Scholz  Dept of Computer Science, University of Kiel, 24105 Kiel, Germany
Sponsors
Italian Chapter of SIGApl : Italian Chapter of SIGApl
SIGAPL: ACM Special Interest Group on APL Programming Language
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 1,   Downloads (12 Months): 10,   Citation Count: 8
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues   peer to peer  

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

ABSTRACT

Most of the existing high-level array-processing languages support a fixed set of pre-defined array operations and a few higher-order functions for constructing new array operations from existing ones. In this paper, we discuss a more general approach made feasible by SAC (for Single Assignement C), a functional variant of C.SAC provides a meta-level language construct called WITH-loop which may be considered a sophisticated variant of the FORALL-loops in HPF or of array comprehensions in functional languages. It allows for the element-wise specification of high-level operations on arrays of any dimensionality: any set of high-level array operations can be specified by means of WITH-loops and be made available in a library. This not only improves the flexibility of specifications, but also simplifies the compilation process.By means of a few examples it is shown that the high-level operations that are typically available in array processing languages such as APL or FORTRAN90 can be easily specified as WITH-loops in SAC. Furthermore, we briefly outline the most important optimization techniques used in the current SAC compiler for achieving efficiently executable code.The paper finally presents a performance comparison between a high-level specification for the multigrid relaxation kernel of the NAS benchmarks in SAC on the one hand and low-level specifications in SISAL and in FORTRAN77 on the other hand. It shows that the SAC implementation, despite its higher level of abstraction, is competitive with the other two both in terms of program runtimes and memory consumption.


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.

 
ABM+92
 
AD79
 
AGP78
ARVIND, K.P. GOSTELOW, and W. PLOUFFE: The ID-Report: An asynchronous Programming Language aad Computing Machine. Technical Report 114, University of California at Irvine, 1978.
 
ASU86
 
BBB+94
D. BAILEY, E. BARSZCZ, J. BARTON, et al.: The NAS Parallel Benchmarks. RNR 94-007, NASA Ames Research Center, 1994.
 
BCOF91
A.P.W. BOHM, D.C. CANN, R.R_ OLDEHOEFT, and J.T. FEO: SISAL Refirenee Manual Language Version 2.0. CS 91-118, Colorado State University, Fort Collins, Colorado, 1991.
 
Ber97a
R. BERNECKY: An Overview of the APEX Compiler. Technical Repm-t 305/97, University of Toronto, 1997.
 
Ber97b
R. BERNECKY: APEX: The APE Parattel Executor. Master's thesis, University of Toronto, 1997.
BGS94
Bro85
 
Bud88
 
Can93
D.C. CANN: The Optimizing SISAL Compiler: Version /Z0. Lawrence Livermore National Laboratory, / i2qL, Livermore California, 1993. par~ of the SISAL distribution.
 
Ive62
 
MSA+85
J.R. MCGRAw, S.K. SKEDZ1ELEWSKI, S.J. 2kLL.a2q, R.R. OLDEHOEFT, et al.: Sisal: Streams and Ileratiou in a Single Assignment Language: Reference Manual Version 1.2. M 146, Lawrence Livermore National Laboratory, LLNL, Livermore California, 1985.
 
Mul88
PW86
 
Sch96
S.-B. SCHOLZ" Single Assignment C-- E~twu~{ und Impkmentierung einer funktionalen C-Variaute mit ~e~jeller Unterstutzu~g shape-invatiaater Array-Operationen. PhD thesis, Institut fur Infozmatik und Praktische Mathematik, Universitat KAel, 1996.
 
Sch97a
S.-B. SCHOLZ: An Overview of SAC-- a Funclional Language for NumeKca/Applications. In R. Bezghammer and F. Simon (Eds.): Programming Languages and Fm~damentals of Programming, Technical Report 97t7. Institut flax Irtformatik urLd Prakfische Mathemafik, Universitat Kid, 1997.
 
Sch97b
 
Sch97c
 
Wol95
ZC91



Peer to Peer - Readers of this Article have also read: