Abstract
This chapter reports on the experience of writing numeric, scientific algorithms in a mostly functional style. One-dimensional FFT, three-dimensional FFT, Eigensolvers, and a Monte Carlo Photon Transport code are studied. While the functional paradigm is effective in the expression of these problems, their memory space use is poor as compared with imperative implementations. The focus is on the programming language Id and its Monsoon Dataflow Machine implementation, and the Id codes are sometimes compared to Haskell or SISAL versions. Each algorithm is informally described, and its performance is treated in a qualitative fashion. These studies show that there continue to be serious problems in the performance of functional languages, especially with respect to space use. (For work on profiling space use in functional language implementations, see Chapter 10. The designers of Id have recognised this problem and have proposed non-functional extensions to enhance the efficiency and expressiveness of the language. Such extensions do improve performance, but they exact a programming cost due to the very low-level, explicit parallel programming that is required.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag London
About this chapter
Cite this chapter
Böhm, A.P.W., Hammes, J.P. (1999). Memory Performance of Dataflow Programs. In: Hammond, K., Michaelson, G. (eds) Research Directions in Parallel Functional Programming. Springer, London. https://doi.org/10.1007/978-1-4471-0841-2_11
Download citation
DOI: https://doi.org/10.1007/978-1-4471-0841-2_11
Publisher Name: Springer, London
Print ISBN: 978-1-85233-092-7
Online ISBN: 978-1-4471-0841-2
eBook Packages: Springer Book Archive