Shared Memory Multiprocessor Support for SAC [chapter]

Clemens Grelck
1999 Lecture Notes in Computer Science  
Sac (Single Assignment C) is a strict, purely functional programming language primarily designed with numerical applications in mind. Particular emphasis is on efficient support for arrays both in terms of language expressiveness and in terms of runtime performance. Array operations in Sac are based on elementwise specifications using so-called With-loops. These language constructs are also well-suited for concurrent execution on multiprocessor systems. This paper outlines an implicit approach
more » ... o compile Sac programs for multi-threaded execution on shared memory architectures. Besides the basic compilation scheme, a brief overview of the runtime system is given. Finally, preliminary performance figures demonstrate that this approach is well-suited to achieve almost linear speedups.
doi:10.1007/3-540-48515-5_3 fatcat:4vyvbyc7djflxh27lrkc4rq3qq