SAC - From high-level programming with arrays to efficient parallel execution

Clemens Grelck*, Sven Bodo Scholz

*Korrespondierende/r Autor/-in für diese Arbeit
19 Zitate (Scopus)

Abstract

SAC is a purely functional array processing language designed with numerical applications in mind. It supports generic, high-level program specifications in the style of APL. However, rather than providing a fixed set of built-in array operations, SAC provides means to specify such operations in the language itself in a way that still allows their application to arrays of any rank and size. This paper illustrates the major steps in compiling generic, rank- and shape-invariant SAC specification into efficiently executable multithreaded code for parallel execution on shared memory multiprocessors. The effectiveness of the compilation techniques is demonstrated by means of a small case study on the PDE1 benchmark, which implements 3-dimensional red/black successive over-relaxation. Comparisons with HPF and ZPL show that despite the genericity of code, SAC achieves highly competitive runtime performance characteristics.

OriginalspracheEnglisch
ZeitschriftParallel Processing Letters
Jahrgang13
Ausgabenummer3
Seiten (von - bis)401-412
Seitenumfang12
ISSN0129-6264
DOIs
PublikationsstatusVeröffentlicht - 01.09.2003

Fingerprint

Untersuchen Sie die Forschungsthemen von „SAC - From high-level programming with arrays to efficient parallel execution“. Zusammen bilden sie einen einzigartigen Fingerprint.

Zitieren