Abstract
We present compilation techniques for Simple Maude, a declarative programming language based on Rewriting Logic which supports term, graph, and object-oriented rewriting. We show how to compile various constructs of Simple Maude onto SIMD and MIMD/SIMD massively parallel architectures, and in particular onto the Rewrite Rule Machine (RRM), a special purpose MIMD/SIMD architecture for rewriting. We then demonstrate how to compile SIMD graph rewriting onto MIMD/SIMD architectures, and discuss mapping 3-D structures into 2-D SIMD meshes. Finally, we sketch the compilation of object-oriented rewriting into efficient MIMD/SIMD code. We thus show that Simple Maude is an efficient, machine-independent parallel programming language.
Preview
Unable to display preview. Download preview PDF.
References
H. Aida, J. Goguen, S. Leinwand, P. Lincoln, J. Meseguer, B. Taheri, and T. Winkler. Simulation and performance estimation for the rewrite rule machine. In Proceedings of the Fourth Symposium on the Frontiers of Massively Parallel Computation, pages 336–344. IEEE, 1992.
H. Aida, J. Goguen, and J. Meseguer. Compiling concurrent rewriting onto the rewrite rule machine. In S. Kaplan and M. Okada, editors, Conditional and Typed Rewriting Systems, Montreal, Canada, June 1990, pages 320–332. Springer LNCS 516, 1991.
H. Aida, S. Leinwand, and J. Meseguer. Architectural design of the rewrite rule machine ensemble. In J. Delgado-Frias and W. R. Moore, editors, VLSI for Artificial Intelligence and Neural Networks, pages 11–22. Plenum Publ. Co., 1991. Proceedings of an International Workshop held in Oxford, England, September 1990.
H. Ait-Kaci, R. Boyer, P. Lincoln, and R. Nasr. Efficient implementation of lattice operations. ACM Transactions on Programming Languages and Systems, 11:115–146, 1989.
M. J. Berger and S. H. Bokhari. A partitioning strategy for nonuniform problems on multiprocessors. IEEE Transactions on Computers, C-35(5):570–580, 1987.
Y. Caseau. Efficient handling of multiple inheritance hierarchies. In OOPSLA'93, Washington, September 1993.
K. M. Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Bartlett Publishers, 1992.
V. Dahl and A. Fall. Logical encoding of conceptual graph lattices. In Proc. 1st International Conference on Conceptual Structures, 1993.
H. Ehrig, H.-J. Kreowski, and G. Rozenberg, editors. Graph Grammars and their Application to Computer Science. Springer LNCS 532, 1991.
G. Ellis. Efficient retrieval from hierarchies of objects using lattice operations. In Proc. 1st International Conference on Conceptual Structures, 1993.
J. Goguen and J. Meseguer. Order-sorted algebra I: Equational deduction for multiple inheritance, overloading, exceptions and partial operations. Theoretical Computer Science, 105:217–273, 1992.
J. Goguen, J. Meseguer, S. Leinwand, T. Winkler, and H. Aida. The rewrite rule machine. Technical Report SRI-CSL-89-6, SRI International, Computer Science Laboratory, March 1989.
D. R. Jefferson. Virtual time. Transactions on Programming Languages and Systems, 7(3):404–425, 1985.
R. Keller and J. Fasel, editors. Proc. Workshop on graph reduction, Santa Fe, New Mexico. Springer LNCS 279, 1987.
P. Lincoln, N. MartÃ-Oliet, and J. Meseguer. Making parallel programming machine-independent. Draft, November 1993.
P. Lincoln, J. Meseguer, and L. Ricciulli. The rewrite rule machine node architecture and its performance. Draft, February 1994.
N. MartÃ-Oliet and J. Meseguer. Rewriting logic as a logical and semantic framework. Technical Report SRI-CSL-93-05, SRI International, Computer Science Laboratory, August 1993.
J. Meseguer. Conditional rewriting logic as a unified model of concurrency. Theoretical Computer Science, 96(1):73–155, 1992.
J. Meseguer. A logical theory of concurrent objects and its realization in the Maude language. In G. Agha, P. Wegner, and A. Yonezawa, editors, Research Directions in Concurrent Object-Oriented Programming, pages 314–390. MIT Press, 1993.
J. Meseguer. Solving the inheritance anomaly in concurrent object-oriented programming. In O. M. Nierstrasz, editor, Proc. ECOOP'93, pages 220–246. Springer LNCS 707, 1993.
J. Meseguer and T. Winkler. Parallel programming in Maude. In J.-P. Banâtre and D. Le Mètayer, editors, Research Directions in High-level Parallel Programming Languages, pages 253–293. Springer LNCS 574, 1992.
S. Peyton-Jones. The Implementation of Functional Programming Languages. Prentice Hall, 1987.
M. R. Sleep, M. J. Plasmeijer, and M. C. J. D. vanEekelen, editors. Term Graph Rewriting. Wiley, 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lincoln, P., MartÃ-Oliet, N., Meseguer, J., Ricciulli, L. (1994). Compiling rewriting onto SIMD and MIMD/SIMD machines. In: Halatsis, C., Maritsas, D., Philokyprou, G., Theodoridis, S. (eds) PARLE'94 Parallel Architectures and Languages Europe. PARLE 1994. Lecture Notes in Computer Science, vol 817. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58184-7_88
Download citation
DOI: https://doi.org/10.1007/3-540-58184-7_88
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58184-0
Online ISBN: 978-3-540-48477-6
eBook Packages: Springer Book Archive