Results 1 -
3 of
3
A Para-Functional Programming Interface for a Parallel Computer Algebra Package
- Journal of Symbolic Computation
, 1994
"... : We describe the design and implementation of pD, a parallel variant of a small functional language that serves as a programming interface for the parallel computer algebra package PACLIB. pD provides several facilities to express parallel algorithms in a flexible way on different levels of abstrac ..."
Abstract
-
Cited by 9 (7 self)
- Add to MetaCart
: We describe the design and implementation of pD, a parallel variant of a small functional language that serves as a programming interface for the parallel computer algebra package PACLIB. pD provides several facilities to express parallel algorithms in a flexible way on different levels of abstraction. The compiler translates a pD module into statically typed parallel C code with explicit task creation and synchronization constructs. This target code can be linked with the PACLIB kernel, the multi-processor runtime system of the computer algebra library SACLIB. The parallelization of several computer algebra algorithms on a shared memory multi-processor demonstrates the elegance and efficiency of this approach. Keywords: Para-Functional Programming, Computer Algebra, Compilation. 1 Introduction We present in this paper a small functional language D and its para-functional variant pD that is used as a parallel programming interface for the computer algebra package PACLIB. Parallelism...
Application of a Para-Functional Language to Problems in Computer Algebra
- In HPFC'95 | High Performance Functional Computing
, 1995
"... We describe how a para-functional programming language is applied to implementing parallel computer algebra algorithms on a shared memory multiprocessor. The language we use is pD, a small functional language that we have developed as a high-level programming interface for the parallel computer alge ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
We describe how a para-functional programming language is applied to implementing parallel computer algebra algorithms on a shared memory multiprocessor. The language we use is pD, a small functional language that we have developed as a high-level programming interface for the parallel computer algebra package PACLIB. pD provides several facilities to express parallel algorithms in a flexible way on different levels of abstraction. The compiler translates a pD program into parallel C code with explicit task creation and synchronization constructs. The implemented para-functional programs perform as efficient as manually coded parallel C programs. 1 Introduction While most computer algebra algorithms [3] are based on the concept of pure functions, real-world computer algebra programs are for performance reasons usually written in a low-level imperative style (typically in C). Consequently, there is little resemblance between the notation in which the mathematical theory is formulated a...
Compiling a Para-Functional Language to Parallel PACLIB C
, 1994
"... We describe the design and implementation of pD, a parallel variant of the small functional language D. In particular, we show the compilation techniques that we apply to translate a pD program with para-functional annotations into statically typed parallel C code that corresponds (with restrictions ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
We describe the design and implementation of pD, a parallel variant of the small functional language D. In particular, we show the compilation techniques that we apply to translate a pD program with para-functional annotations into statically typed parallel C code that corresponds (with restrictions) in structure and quality to a program written by a human programmer. The generated code can be linked with the PACLIB kernel, the multi-processor runtime system for the computer algebra library SACLIB. This allows to develop parallel computer algebra applications in an elegant and efficient manner. Supported by the FWF grant S5302-PHY "Parallel Symbolic Computation". Contents 1 Introduction 4 2 The Pseudo-Functional Core Language 6 2.1 Abstract Syntax : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 6 2.2 Examples : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 7 2.3 Semantic Algebras : : : : : : : : : : : : : : : : : : : : : : : : : : : : :...

