Abstract
The MaRS machine is an experimental modular distributed control multiprocessor, for parallel graph reduction, using a combinator machine language, and dedicated to the parallel execution of purely functional languages. A basic programming language for the machine, named MaRS Lisp, has been defined, the main features of which are : call-by-need (default), higher order functions, implicit curryfication of functions. It includes a simple mechanism to express parallelism, similar to the future construction of Multilisp [15]. A prototype of MaRS is currently being designed in VLSI 1.5-micron CMOS technology with two levels of metal, by means of a CAD system. The prototype is scheduled to be completed by 1989. The machine uses specific types of processor for Reduction, Memory and Communication. The Communication processor is the basic element of an Omega switching interconnection network. In addition to its routing function, the communication network is able to balance the activities in the machine, thanks to charge information processed by each Communication processor and propagated along the network, in the opposite direction of messages. This charge information also serves to modify dynamically the execution model, so as to resume execution in a sequential manner when the parallelism is high enough to keep each reduction processor fully busy; and vice versa, so as to allow creation of new parallel processes when the machine is not saturated. The machine architecture and its functional organization are described, as well as the execution model. Some expected performances are given, obtained by mean of fine-grained simulations.
This work has been supported by DGA/STPA
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
S.K. Abdali. An abstraction algorithm for combinatory logic. Journal of Symbolic Logic, (1):31ā49, March 1976.
D. I. Bevan, G. L. Burn, and R. J. Karia. Overview of a parallel reduction machine project. In PARLE ā Parallel Architectures and Languages Europe, Eindhoven, The Nederlands, pages 394ā413. Springer-Verlag, Lecture Notes in Computer Science 258, September 1987.
M. Castan, M.-H. Durand, G.Durrieu, B. LƩcussan, and M. LemaƮtre. MaRS: a multiprocessor machine for parallel graph reduction. In 9th Annual Hawai International Conference on System Science, January 1986.
M. Castan, M.-H. Durand, and M. LemaĆ®tre. A set of combinators for abstraction in linear time. Information Processing Letters, 24:183ā188, February 1987.
M. Castan, G. Durrieu, B. LĆ©cussan, M. LemaĆ®tre, A. Contessa, E. Cousin, and P. Ng. Toward the design of a parallel graph reduction machine: the MaRS project. In Proceedings of a Workshop on Graph Reduction, Lecture Notes in Computer Science 279, pages 160ā180, Santa Fe, USA, September 1986.
M. Cubero-Castan. Vers une dĆ©finition mĆ©thodique d'architecture de calculateur pour l'exĆ©cution parallĆØle des langages fonctionnels. ThĆØse de Doctorat d'Etat, UniversitĆ© Paul Sabatier, Toulouse, Septembre 1988.
H.B. Curry, R. Feys, and W. Craig. Combinatory Logic. Nort-Holland, 1968.
J. Darlington and M. Reeve. Alice ā a multiprocessor reduction machine for the parallel evaluation of applicative languages. In Proceedings of the ACM Symposium on Functional Languages and Computer Architecture, Portsmouth, pages 65ā76, October 1981.
M.-H. Durand. Ćtude et Ć©valuation du parallĆ©lisme dans les langages fonctionnels ā une approche de la rĆ©duction de graphe par les combinateurs. ThĆØse de Docteur-IngĆ©nieur, ENSAE, Toulouse, Juin 1986.
J. H. Fasel and R. M. Keller, editors. Graph Reduction, Proceedings of a Workshop, Santa FĆ©, New Mexico, USA, October 1986. Springer-Verlag, Lecture Notes in Computer Science 279.
Richard P. Gabriel. Performance and Evaluation of Lisp Systems. The MIT Press, Cambridge, Massachusetts and London, England, 1985.
B. Goldberg. Buckwheat: Graph reduction on a shared memory multiprocessor. In Proceedings of the 1988 ACM Conference on Lisp and Functional Programming, pages 40ā51, Snowbird, Utah, July 1988.
B. Goldberg and P. Hudak. Alfalfa: Distributed graph reduction on a hypercube multiprocessor. In Graph Reduction, pages 94ā113. Springer-Verlag, Lecture Notes in Computer Science 279, October 1986.
R. H. Halstead. An assessment of Multilisp: Lessons from experience. International Journal of Parallel Programming, 15(6), December 1986.
R. H. Halstead Jr. Multilisp: A language for concurrent symbolic computation. ACM Transactions on Programming Languages and Systems, 7(4):501ā538, October 1985.
D. Hellis. The Connection Machine. The MIT Press, 1985.
P. Hudak and B. Goldberg. Distributed execution of functional programs using serial combinators. IEEE Transactions on Computers, c-34(10):881ā891, October 1985.
P. Hudak and E. Mohr. Graphinators and the duality of SIMD and MIMD. In Proceedings of the 1988 ACM Conference on Lisp and Functional Programming, pages 224ā234, Snowbird, Utah, July 1988.
S. L. Peyton Jones, C. D. Clack, and J. Salkild. Grip ā a high-performance architecture for parallel graph reduction machine. In Functional Programming Languages and Computer Architecture, Portland, Oregon, pages 98ā112. Springer-Verlag, Lecture Notes in Computer Science 274, September 1987.
M. LemaĆ®tre, M. Castan, M.-H. Durand, G. Durrieu, and B. LĆ©cussan. Mechanisms for efficient multiprocessor combinator reduction. In Proceedings of the 1986 ACM Conference on Lisp and Functional Programming, pages 113ā121, Cambridge, Massachusetts, August 1986.
F.C.H. Lin R. M. Keller. Simulated performance of a reduction-based multiprocessor computer. Computer, pages 70ā82, July 1984.
M. Scheevel. Norma: a graph reduction processor. In Proceedings of the 1986 ACM Conference on Lisp and Functional Programming, pages 212ā219, Cambridge, Massachusetts, August 1986.
D.A. Turner. A new implementation technique for applicative languages. Software ā Practice and Experience, 9(1):31ā49, January 1979.
P. Watson and Ian Watson. Evaluating functional programs on the Flagship machine. In Functional Programming Languages and Computer Architecture, Portland, Oregon, pages 80ā97. Springer-Verlag, Lecture Notes in Computer Science 274, September 1987.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
Ā© 1989 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Contessa, A. et al. (1989). MaRS, a combinator graph reduction multiprocessor. In: Odijk, E., Rem, M., Syre, JC. (eds) PARLE '89 Parallel Architectures and Languages Europe. PARLE 1989. Lecture Notes in Computer Science, vol 365. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3540512845_39
Download citation
DOI: https://doi.org/10.1007/3540512845_39
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-51284-4
Online ISBN: 978-3-540-46183-8
eBook Packages: Springer Book Archive