We found a match
Your institution may have access to this item. Find your institution then sign in to continue.
- Title
SAC—A Functional Array Language for Efficient Multi-threaded Execution.
- Authors
Grelck, Clemens; Scholz, Sven-Bodo
- Abstract
We give an in-depth introduction to the design of our functional array programming language S aC, the main aspects of its compilation into host machine code, and its parallelisation based on multi-threading. The language design of S aC aims at combining high-level, compositional array programming with fully automatic resource management for highly productive code development and maintenance. We outline the compilation process that maps S aC programs to computing machinery. Here, our focus is on optimisation techniques that aim at restructuring entire applications from nested compositions of general fine-grained operations into specialised coarse-grained operations. We present our implicit parallelisation technology for shared memory architectures based on multi-threading and discuss further optimisation opportunities on this level of code generation. Both optimisation and parallelisation rigorously exploit the absence of side-effects and the explicit data flow characteristic of a functional setting.
- Subjects
PROGRAMMING languages; ARRAY processors; PROGRAMMABLE array logic; PARALLEL processing; COMPUTER software; AUTOMATION; COMPUTER architecture; SOURCE code; DATA flow computing
- Publication
International Journal of Parallel Programming, 2006, Vol 34, Issue 4, p383
- ISSN
0885-7458
- Publication type
Article
- DOI
10.1007/s10766-006-0018-x