Abstract
TransPive is a distributed Lisp system that originally ran on a Transputers network. The system simulates a shared object space, supporting remote pointers with a distributed object manager and a distributed Garbage Collector (GC). A future primitive, with an explicit touch operation, is provided to spawn remote tasks.
This paper presents a new version of TransPive, running on a TCP/IP network using PVM as the communication layer. This version supports a new causal ordering, a different object manager (based on causal broadcasts), a new GC, and a different implementation of the message-sending primitives.
Some applications have been run on both versions, showing important lessons on distributed language implementation. We show here a parallel triangulation application with its results.
Some conclusions are drawn from the experience, mainly the need for first class threads (treated as objects), an object-oriented language and very simple GCs.
This work has been partially funded by FONDECYT project 1950599.
Preview
Unable to display preview. Download preview PDF.
Bibliography
K. P. Birman, A. Schiper, P. Stephenson, “Lightweight Causal and Atomic Group Multicast,” ACM Trans. on Computer Systems, Vol. 9, N. 3, pp. 272–314, August 1991.
A. D. Birrel, B. J. Nelson, “Implementing Remote Procedure Calls,” ACM Trans. on Computer Systems, Vol. 2, N. 1, pp. 39–59, February 1984.
L. Lamport, “Time, Clocks, and the Ordering of Events in a Distributed System,” Communications of the ACM, Vol. 21, No. 7, pp. 558–565, July 1978.
Lang, B., Queinnec, C. and Piquer, J.: “Garbage Collecting the World,” 19th ACM Conference on Principles of Programming Languages 1992, Albuquerque, New Mexico, January 1992, pp. 39–50.
A. Orellana, J. M. Piquer, “Asynchronism in Distributed Systems: Implementing Large Causality,” Proc of the XIV International Conference of the Chilean Computer Science Society, Concepción, Chile, November 1994.
J. M. Piquer, “Indirect Reference Counting: A Distributed GC,” LNCS 505, PARLE '91 Proceedings Vol I, pp. 150–165, Springer Verlag, Eindhoven, The Netherlands, June 1991.
J. M. Piquer, “Preserving Distributed Data Coherence Using Asynchronous Broadcasts,” Proc. of the XI International Conference of the Chilean Computer Science Society, Plenum Press, Santiago, Chile, October 1991.
J. M. Piquer, “Large Causality: Ordering Broadcasts and Messages,” position paper, 5th ACM SIGOPS Workshop on Models and Paradigms for Distributed Systems Structuring, Mt Saint-Michel, France, September 1992.
J. M. Piquer, C. Queinnec, “TransPive: A Distributed Lisp System,” Lettre du Transputer, Laboratoire d'Informatique de Besançon, N. 16, pp. 55–68, December 1992.
J. M. Piquer, “Indirect Mark and Sweep: a Distributed GC,” International Workshop on Memory Management, IWMM'95, Kinross, Scotland, UK, September 1995.
M. C. Rivara, “Mesh Refinement Processes Based on the Generalized Bisection of Simplices,” Journal of Numerical Analysis, 21, pp. 604–613, 1984.
Sun Microsystems Computer Corporation, “The Java Language Specification”, http://sunsite.unc.edu/java, May 1995.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Piquer, J.M. (1996). A re-implementation of TransPive: Lessons from the experience. In: Ito, T., Halstead, R.H., Queinnec, C. (eds) Parallel Symbolic Languages and Systems. PSLS 1995. Lecture Notes in Computer Science, vol 1068. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0023070
Download citation
DOI: https://doi.org/10.1007/BFb0023070
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61143-1
Online ISBN: 978-3-540-68332-2
eBook Packages: Springer Book Archive