Abstract
In a parallel graph reduction system, speculative evaluation can increase parallelism by performing potentially useful computations before they are known to be necessary. Speculative computations may be coded explicitly in a program, or they may be scheduled implicitly by the reduction system as idle processors become available. A general approach to both kinds of speculation incurs a great deal of overhead that may outweigh the benefits of speculative evaluation for fine-grain speculative tasks.
The basic principle of local speculation is to permanently bind all implicit speculative computations to the sparking processor. Should all local mandatory tasks become blocked, local speculation offers a low- cost alternative to task migration. Restricting speculation to the local processor simplifies the problems of speculative task management, and opens the door for fine-grain speculative tasks.
Though there are fewer opportunities for local speculation than for more general speculation, local speculation can often make use of the same idle processor time that would normally trigger task migration. For distributed graph reduction systems, local speculation may prove to be a worthwhile, low-cost alternative to potentially expensive task migration.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Paul Hudak. Distributed task and memory management. Second Annual ACM Symposium on Principles of Distributed Computing, pages 277–289, Montreal, Quebec, Canada, 17-19 August 1983. Association for Computing Machinery.
James S. Mattson Jr. An Effective Speculative Evaluation Technique for Parallel Supercombinator Graph Reduction. PhD thesis, Department of Computer Science and Engineering, University of California, San Diego, Mail Code 0114, 9500 Gilman Drive, La Jolla, CA, USA, February 1993. Technical Report CS93-282.
Andrew S. Partridge. Speculative Evaluation in Parallel Implementations of Lazy Functional Languages. PhD thesis, Department of Computer Science, University of Tasmania, GPO Box 252C, Hobart, Tasmania, 7001, Australia, October 1991.
Simon L. Peyton Jones. Implementing lazy functional languages on stock hardware: the Spineless Tagless G-machine. Journal of Functional Programming, 2(2):127–202, April 1992.
Simon L. Peyton Jones, Chris Clack, John Salkild, and Mark Hardie. GRIP-a high-performance architecture for parallel graph reduction. Functional Programming Languages and Computer Architecture, pages 98–112, Portland, OR, USA, 14-16 September 1987. Springer-Verlag.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1994 British Computer Society
About this chapter
Cite this chapter
Mattson, J.S., Griswold, W.G. (1994). Local Speculative Evaluation for Distributed Graph Reduction. In: O’Donnell, J.T., Hammond, K. (eds) Functional Programming, Glasgow 1993. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3236-3_15
Download citation
DOI: https://doi.org/10.1007/978-1-4471-3236-3_15
Publisher Name: Springer, London
Print ISBN: 978-3-540-19879-6
Online ISBN: 978-1-4471-3236-3
eBook Packages: Springer Book Archive