Abstract
“Super Monaco” is the successor to Monaco, a shared-memory multiprocessor implementation of a flat concurrent logic programming language. While the system retains, by-and-large, the older Monaco compiler and intermediate abstract machine, the intermediate code translator and the runtime system have been completely replaced, incorporating a number of new features intended to improve robustness, flexibility, maintainability, and performance. There are currently two native-code backends for 80×86-based and MIPS-based multiprocessors. The runtime system, written in C, improves upon its predecessor with better memory utilization and garbage collection, and includes new features such as an efficient termination scheme and a novel variable binding and hooking mechanism. The result of this organization is a portable system which is robust, extensible, and has performance competitive with C-based systems. This paper describes the design choices made in building the system and the interfaces between the components.
Chapter PDF
References
T. Anderson et al. Scheduler Activations: Effective Kernel Support for the User-Level Management of Parallelism. ACM Trans. on Comp. Sys., 10(1):53–79, 1992.
C. Au-Yeung. A RISC Backend for the 2nd Generation Shared-Memory Multiprocessor Monaco System. Bachelor's thesis, University of Oregon, December 1994.
T. Chikayama et al. A Portable and Efficient Implementation of KL1. In Int. Symp. on Prog. Lang. Impl. and Logic Prog., pp. 25–39, 1994. Springer-Verlag.
J. A. Crammond. The Abstract Machine and Implementation of Parallel Parlog. New Generation Computing, 10(4):385–422, August 1992.
I. Foster and S. Taylor. Strand: A Practical Parallel Programming Language. In North American Conf. on Logic Prog., pages 497–512. MIT Press, October 1989.
S. Gregory. Parallel Logic Programming in PARLOG: The Language and its Implementation. Addison-Wesley Ltd., Wokingham, England, 1987.
D. Gudeman et al. jc: An Efficient and Portable Sequential Implementation of Janus. In Joint Int. Conf. and Symp. on Logic Prog.. MIT Press, 1992.
R. C. Haygood. Native Code Compilation in SICStus Prolog. In International Conference on Logic Programming, pages 190–204, Genoa, June 1994. MIT Press.
A. Houri et al. A Sequential Abstract Machine for Flat Concurrent Prolog. In Concurrent Prolog: Collected Papers, vol. 2, pp. 513–574. MIT Press, 1987.
Y. Kimura and T. Chikayama. An Abstract KL1 Machine and its Instruction Set. In Int. Symp. on Logic Prog., pp. 468–477. IEEE Computer Society Press, 1987.
S. Kliger and E. Y. Shapiro. From Decision Trees to Decision Graphs. In North American Conf. on Logic Prog., pages 97–116. MIT Press, October 1990.
A. Osterhaug, editor. Guide to Parallel Programming on Sequent Computer Systems. Prentice Hall, Englewood Cliffs, NJ, 2nd edition, 1989.
K. Rokusawa et al. Distributed Memory Implementation of KLIC. New Generation Computing, vol. 14, no. 3, 1995.
M. Sato et al. Evaluation of the KL1 Parallel System on a Shared Memory Multiprocessor. In IFIP Work. Conf. on Par. Processing. North Holland, 1988.
E. Y. Shapiro. The Family of Concurrent Logic Programming Languages. ACM Computing Surveys, 21(3):413–510, 1989.
E. Tick. Monaco: A High-Performance Flat Concurrent Logic Programming System. In Conf. on Parallel Arch. and Lang. Europe, LNCS no. 694, pp. 266–278. Springer Verlag, 1993.
E. Tick and C. Banerjee. Performance Evaluation of Monaco Compiler and Runtime Kernel. In Int. Conf. on Logic Prog., pages 757–773. MIT Press, June 1993.
E. Tick et al. Experience with the Super Monaco Optimizing Compiler. University of Oregon, Dept. of Computer Science Technical Report CIS-TR-95-07.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Larson, J.S., Massey, B.C., Tick, E. (1995). Super Monaco: Its portable and efficient parallel runtime system. In: Haridi, S., Ali, K., Magnusson, P. (eds) EURO-PAR '95 Parallel Processing. Euro-Par 1995. Lecture Notes in Computer Science, vol 966. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0020490
Download citation
DOI: https://doi.org/10.1007/BFb0020490
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60247-7
Online ISBN: 978-3-540-44769-6
eBook Packages: Springer Book Archive