High-level abstractions for efficient concurrent systems

  • Suresh Jagannathan
  • James Philbin
Session Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 782)

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Harold Abelson and Gerald Sussman. Structure and Interpretation of Computer Programs. MIT Press, Cambridge, Mass., 1985.Google Scholar
  2. 2.
    Thomas Anderson, Edward Lazowska, and Henry Levy. The Performance Implications of Thread Management Alternatives for Shared Memory MultiProcessors. IEEE Transactions on Computers, 38(12):1631–1644, December 1989.Google Scholar
  3. 3.
    Thomas E. Anderson, Brian N. Bershad, Edward D. Lazowska, and Henry M. Levy. Scheduler activations: effective kernel support for the user-level management of parallelism. In Proceedings of 13th ACM Symposium on Operating Systems Principles, pages 95–109. Association for Computing Machinery SIGOPS, October 1991.Google Scholar
  4. 4.
    Andrew Appel. A Runtime System. Journal of Lisp and Symbolic Computation, 3(4):343–380, November 1990.Google Scholar
  5. 5.
    John K. Bennett, John B.Carter, and Willy Zwaenepoel. Munin: Distributed Shared Memory Based on Type-Specific Memory Coherence. In Symposium on Principles and Practice of Parallel Programming, March 1990.Google Scholar
  6. 6.
    A.D. Birrell, J.V. Guttag, J.J. Horning, and R. Levi. Synchronization Primitives for a Multiprocessor: A Formal Specification. In Proceedings of the 11th Symposium on Operating Systems Principles, pages 94–102, November 1987.Google Scholar
  7. 7.
    David L. Black, David B. Golub, Daniel P. Julin, Richard Rashid, Richard P. Draves, Randall W. Dean, Alessandro Forin, Joseph Barrera, Hideyuki Tokuda, Gerald Malan, and David Bohman. Microkernel Operating System Architecture and Mach. In Workshop Proceedings Micro-Kenels and other Kernel Architectures, pages 11–30, April 1992.Google Scholar
  8. 8.
    Eric Cooper and Richard Draves. C Threads. Technical Report CMU-CS-88-154, Carnegie-Mellon University, June.Google Scholar
  9. 9.
    Eric Cooper and J.Gregory Morrisett. Adding Threads to Standard ML. Technical Report CMU-CS-90-186, Carnegie-Mellon University, 1990.Google Scholar
  10. 10.
    William Clinger et. al. The Revised Revised Revised Report on Scheme or An UnCommon Lisp. Technical Report AI-TM 848, MIT Artificial Intelligence Laboratory, 1985.Google Scholar
  11. 11.
    Raphael Finkel and John Fishburn. Parallelism in Alpha-Beta Search. Artificial Intelligence, 19(1):89–106, 1982.Google Scholar
  12. 12.
    David Saks Greenberg. Full Utilization of Communication Resources. PhD thesis, Yale University, June 1991.Google Scholar
  13. 13.
    Christopher Haynes and Daniel Friedman. Embedding Continuations in Procedural Objects. ACM Transactions on Programming Languages and Systems, 9(4):582–598, 1987.Google Scholar
  14. 14.
    Wilson Hsieh, Paul Wang, and William Weihl. Computation Migration: Enhancing Locality for Distributed-Memory Parallel Systems. In Fourth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pages 239–249, May 1993. Also appears as ACM SIGPLAN Notices, Vol. 28, number 7, July, 1993.Google Scholar
  15. 15.
    Feng hsiung Hsu. Large Scale Parallelization of Alpha-Beta Search: An Algorithmic and Architectural Studywith Computer Chess. PhD thesis, Carnegie-Mellon University, 1990. Published as Technical Report CMU-CS-90-108.Google Scholar
  16. 16.
    Paul Hudak. Para-Functional Programming. IEEE Computer, 19(8):60–70, August 1986.Google Scholar
  17. 17.
    Suresh Jagannathan and James Philbin. A Customizable Substrate for Concurrent Languages. In ACM SIGPLAN '91 Conference on Programming Language Design and Implementation, June 1992.Google Scholar
  18. 18.
    Suresh Jagannathan and James Philbin. A Foundation for an Efficient Multi-Threaded Scheme System. In Proceedings of the 1992 Conf. on Lisp and Functional Programming, June 1992.Google Scholar
  19. 19.
    David Kranz, Robert Halstead, and Eric Mohr. Mul-T: A High Performance Parallel Lisp. In Proceedings of the ACM Symposium on Programming Language Design and Implementation, pages 81–91, June 1989.Google Scholar
  20. 20.
    David Kranz, Kirk Johnson, Anant Agarwal, John Kubiatowicz, and Beng-Hon Lim. Integrating Message-Passing and Shared-Memory: Early Experience. In Proceedings of the Fourth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pages 54–63, 1993.Google Scholar
  21. 21.
    Peter J. Landin. The Mechanical Evaluation of Languages. Computer Journal, 6(4):308–320, January 1964.Google Scholar
  22. 22.
    Kai Li and Paul Hudak. Memory Coherence in Shared Virtual Memory Systems. ACM Transactions on Computer Systems, 7(4):321–359, November 1989.Google Scholar
  23. 23.
    Brian D. Marsh, Michael L. Scott, Thomas J. LeBlanc, and Evangelos P. Markatos. Firstclass user-level threads. In Proceedings of 13th ACM Symposium on Operating Systems Principles, pages 110–21. Association for Computing Machinery SIGOPS, October 1991.Google Scholar
  24. 24.
    Sun Microsystems. Lightweight Processes, 1990. In SunOS Programming Utilities and Libraries.Google Scholar
  25. 25.
    Robin Milner, Mads Tofte, and Robert Harper. The Definition of Standard ML. MIT Press, 1990.Google Scholar
  26. 26.
    James Philbin. An Operating System for Modern Languages. PhD thesis, Dept. of Computer Science, Yale University, 1993.Google Scholar
  27. 27.
    M. Rozier, V. Abrossimov, F. Armand, I. Boule, M. Gien, M. Guillemont, F. Herrman, C. Kaiser, S. Langlois, P. Leonard, and W. Newhauser. Overview of the Chorus Distributed Operating System. In Workshop Proceedings Micro-Kenels and other Kernel Architectures, pages 39–69, April 1992.Google Scholar
  28. 28.
    Guy Steele Jr. Rabbit: A Compiler for Scheme. Master's thesis, Massachusetts Institute of Technology, 1978.Google Scholar
  29. 29.
    A. Tevanian, R. Rashid, D. Golub, D. Black, E. Cooper, and M. Young. Mach Treads and the UNIX Kernel: The Battle for Control. In 1987 USENIX Summer Conference, pages 185–197, 1987.Google Scholar
  30. 30.
    David Ungar. Generation Scavenging: A Non-Disruptive High Performance Storage Reclamation Algorithm. In Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, pages 157–167, 1984.Google Scholar
  31. 31.
    Thorsten Von Eicken, David Culler, Seth Goldstein, and Klaus Schauser. Active Messages: A Mechanism for Integrated Communication and Compuation. In Proceedings of the 19th International Symposium on Computer Architecture, 1992.Google Scholar

Copyright information

© Springer-Verlag 1994

Authors and Affiliations

  • Suresh Jagannathan
    • 1
  • James Philbin
    • 1
  1. 1.NEC Research InstitutePrincetonUSA

Personalised recommendations