skip to main content
10.1145/800055.802017acmconferencesArticle/Chapter ViewAbstractPublication PageslfpConference Proceedingsconference-collections
Article
Free Access

Implementation of multilisp: Lisp on a multiprocessor

Published:06 August 1984Publication History

ABSTRACT

Multilisp is an extension of Lisp (more specifically, of the Lisp dialect Scheme [15]) with additional operators and additional semantics to deal with parallel execution. It is being implemented on the 32-processor Concert multiprocessor. The current implementation is complete enough to run the Multilisp compiler itself, and has been run on Concert prototypes including up to four processors. Novel techniques are used for task scheduling and garbage collection. The task scheduler helps control excessive resource utilization by means of an unfair scheduling policy: the garbage collector uses a multiprocessor algorithm modeled after the incremental garbage collector of Baker [2]. A companion paper [9] discusses language design issues relating to Multilisp.

References

  1. 1.Anderson, T., The Design of a Multiprocessor Development System, M.I.T. Laboratory for Computer Science Technical Report TR-279, Cambridge, Mass., Sept. 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2.Baker, H., Actor Systems for Real-Time Computation, M.I.T. Laboratory for Computer Science Technical Report TR-197, Cambridge, Mass., March 1978. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3.Baker, H., and C. Hewitt, "The Incremental Garbage Collection of Processes," M.I.T. Artificial Intelligence Laboratory Memo 454, Cambridge, Mass. Dec. 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4.Cohen, S., R. Rosner, and A. Zidon, "Paralisp Simulator (reference manual)," Hebrew University Computer Science Dept. Research Report 83-2, Jerusalem, Israel, Jan. 1983.Google ScholarGoogle Scholar
  5. 5.Dijkstra, E., et al., "On-the-fly Garbage Collection: An Exercise in Co-operation," Language Hierarchies and Interfaces (Lecture Notes in Computer Science 46), Springer-Verlag, 1976.Google ScholarGoogle Scholar
  6. 6.Friedman, D., and D. Wise, "Aspects of Applicative Programming for Parallel Processing," IEEE Trans. Comp. C-27:4, April 1978, pp. 289-296.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7.Halstead, R., "Architecture of a Myriaprocessor," IEEE COMPCON Spring 81, San Francisco, Feb. 1981, pp. 299-302.Google ScholarGoogle Scholar
  8. 8.Halstead, R., "Architecture of a Myriaprocessor," in Advanced Computer Concepts, J. Solinsky, ed., La Jolla Institute, La Jolla, California, 1981.Google ScholarGoogle Scholar
  9. 9.Halstead, R., "The Multilisp Language: Lisp for a Multiprocessor," submitted to International Conference on Fifth Generation Computer Systems, Tokyo, Nov. 1984.Google ScholarGoogle Scholar
  10. 10.Keller, R., "Rediflow Multiprocessing," IEEE COMPCON Spring 84, San Francisco, Feb. 1984.Google ScholarGoogle Scholar
  11. 11.Kernighan, B., and D. Ritchie, The C Programming Language, Prentice-Hall, Englewood Cliffs, N.J., 1978. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12.Marti, J., and J. Fitch, "The Bath Concurrent Lisp Machine," EUROCAM '83 (Lecture Notes in Computer Science), Springer-Verlag, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 13.Schwartz, J., "Ultracomputers," ACM Trans. Programming Languages and Systems 2:4, October 1980, pp. 484-521. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14.Sugimoto, S., et al., "A Multi-Microprocessor System for Concurrent Lisp," Proc. 1983 International Conf. on Parallel Processing, June 1983.Google ScholarGoogle Scholar
  15. 15.Sussman, G., and H. Abelson, Structure and Interpretation of Computer Programs, M.I.T. Artificial Intelligence Laboratory Technical Report 735, Cambridge, Mass., draft July 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Implementation of multilisp: Lisp on a multiprocessor

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        LFP '84: Proceedings of the 1984 ACM Symposium on LISP and functional programming
        August 1984
        364 pages
        ISBN:0897911423
        DOI:10.1145/800055

        Copyright © 1984 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 6 August 1984

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article

        Acceptance Rates

        Overall Acceptance Rate30of109submissions,28%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader