A software framework for the parallel execution of sequential programs using C++ classes is presented. The functional language Concurrent ML is used to implement the underlying harness and to design the programming interfaces. The hardware-independent harness promises a composable multi-paradigm, unified approach to parallelism across different technologies: PowerPCs, DSPs and FPGAs. Performance results for an image processing case study are given. 1 A Parallel Framework This paper presents a software framework currently under development for the parallel execution of applications. The source of the application remains in a sequential form such as C++ with no annotations, language extensions, or library calls for parallelism. A framework in this context is defined to be the the totality of the software infrastructure that maps this sequential expression to parallel execution. The framework consists of application class hierarchies, a pre-compiler and an underlying “harness” whic...
David J. Johnston, Martin Fleury, Andy C. Downton