A toolkit for parallel functional programming


Hartel, Pieter H. and Hofman, Rutger F.H. and Langendoen, Koen G. and Muller, Henk L. and Vree, Willem G. and Hertzberger, L.O. (1995) A toolkit for parallel functional programming. Concurrency: Practice and experience, 7 (8). pp. 765-793. ISSN 1040-3108

open access
Abstract:Our toolkit for the design and implementation of parallel functional programs supports the stepwise development of parallel programs from a high level sequential specification to an optimised parallel implementation. The toolkit is used as follows: 1. The algorithm to be implemented is specified in a functional language. The program is debugged and tested using an interpreter. 2. The program is compiled for a sequential machine. Its performance is analysed an improved. 3. Annotation driven transformations are applied to the program to indicate parallel tasks. Simulations at task level, basic block level and bus transaction level make it possible to analyse the parallel performance of the program at three levels of detail. 4. When the performance is optimised using the simulators, the program is executed on a genuine parallel machine. Several programs have been developed with the toolkit. A program that simulates tidal flow in an estuary of the North sea is presented as a case study to demonstrate the merits of the toolkit when developing complex parallel programs. The toolkit not only supports the design of parallel applications; it also allows the study of important concepts in parallel computer architecture. These include the behaviour of cached memory systems, bus protocols, scheduling algorithms andmemorymanagement algorithms
Item Type:Article
Copyright:© 1995 Wiley
Link to this item:http://purl.utwente.nl/publications/55708
Official URL:https://doi.org/10.1002/cpe.4330070803
Export this item as:BibTeX
HTML Citation
Reference Manager


Repository Staff Only: item control page