Skip to main content

Universal mechanisms for concurrency

  • Invited Lectures
  • Conference paper
  • First Online:
PARLE '89 Parallel Architectures and Languages Europe (PARLE 1989)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 365))

Abstract

We propose a machine model consisting of a set of primitive mechanisms for communication, synchronization, and naming. These mechanisms have been selected as a compromise between what can easily be implemented in hardware and what is required to support parallel models of computation. Implementations of three models of parallel computation: actors, dataflow, and shared-memory using this model are sketched. The costs of the mechanisms on a particular parallel machine are presented and issues involved in implementing the model are discussed. Identifying a primitive set of mechanisms separates issues of programming models from issues of machine organization. Problems are partitioned into those involving implementation of the primitive mechanisms and those involving implementation of programming models and systems using the mechanisms.

The research described in this paper was supported in part by the Defense Advanced Research Projects Agency under contracts N00014-88K-0738, N00014-87KC-0825, and N00014-85-K-0124 and in part by a National Science Foundation Presidential Young Investigator Award with matching funds from General Electric Corporation and IBM Corporation.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Agha, Gul A., Actors: A Model of Concurrent Computation in Distributed Systems, MIT Press, Cambridge, MA, 1986.

    Google Scholar 

  2. Arvind, Nikhil, R., and Pingali, K., I-Structures: Data Structures for Parallel Computing, MIT Laboratory for Computer Science, Computation Structures Group Memo 269, February 1987.

    Google Scholar 

  3. Baker, H. and Hewitt, C., “The Incremental Garbage Collection of Processes,” ACM Conference on AI and Programming Languages, Rochester, New York, August, 1977, pp. 55–59.

    Google Scholar 

  4. BBN Laboratories, Inc., Butterfly Parallel Processor Overview, BBN Report No. 6148, 1986.

    Google Scholar 

  5. Dally, William J. “Performance Analysis of k-ary n-cube Interconnection Networks,” IEEE Transactions on Computers, to appear.

    Google Scholar 

  6. Dally, William J. et.al., “The J-Machine: A Fine-Grain Concurrent Computer,” IFIP Congress, 1989.

    Google Scholar 

  7. Dally, William J., “The J-Machine: System Support for Actors,” Actors: Knowledge-Based Concurrent Computing, Hewitt and Agha eds., MIT Press, 1989.

    Google Scholar 

  8. Dally, William J., and Song, Paul., “Design of a Self-Timed VLSI Multicomputer Communication Controller,” Proc. International Conference on Computer Design, ICCD-87, October 1987, pp. 230–234.

    Google Scholar 

  9. Dally, William J. et.al., “Architecture of a Message-Driven Processor,” Proceedings of the 14th ACM/IEEE Symposium on Computer Architecture, June 1987, pp. 189–196..

    Google Scholar 

  10. Goto, A. et. al., “Overview of the Parallel Inference Machine Architecture,” Proc. FGCS-88, pp. 208–229.

    Google Scholar 

  11. Gurd, J.R., Kirkham, C.C., and Watson, I., “The Manchester Prototype Dataflow Computer,” CACM, Vol. 28, No. 1, January 1985, pp. 34–52.

    Google Scholar 

  12. Halstead, Robert H., “Parallel Symbolic Computation,” IEEE Computer, Vol. 19, No. 8, Aug. 1986, pp. 35–43.

    Google Scholar 

  13. Hoare, C.A.R., “Communicating Sequential Processes,” Comm. ACM, Vol. 21, No. 8, August 1978, pp. 666–677.

    Article  Google Scholar 

  14. Iannucci, R.A., “Toward a Dataflow/von Neumann Hybrid Architecture,” 15th ACM/IEEE Symposium on Computer Architecture, June 1988, pp. 131–140.

    Google Scholar 

  15. Jordan, H.F., “Performance Measurements on HEP — A Pipelined MIMD Computer” 10th ACM/IEEE Symposium on Computer Architecture, June 1983, pp. 207–212.

    Google Scholar 

  16. Nuth, Peter, Parallel Processor Architecture: A Thesis Proposal MIT AI Lab, Ph.D. Thesis Proposal, 1988.

    Google Scholar 

  17. Organick, E.I., “Computer System Organization, The B5700/6700 Series,” Academic Press, New York, 1973.

    Google Scholar 

  18. Papadopoulos, G.M., An Engineering Implementation of the TTDA MIT Laboratory for Computer Science, Computation Structures Group Memo 270, February 1987.

    Google Scholar 

  19. Totty, Brian, An Operating Environment for the Jellybean Machine, MIT Artificial Intelligence Laboratory Memo No. 1070, 1988.

    Google Scholar 

  20. Veen, Arthur H., “Dataflow Machine Architecture,” ACM Computing Surveys, Vol. 18, No. 4, December 1986, pp. 365–396.

    Article  Google Scholar 

  21. Wills, D. Scott, Multi-Model Execution on a Fine Grain Message Passing Substrate, Sc.D. Thesis Proposal, MIT Artificial Intelligence Laboratory, 19 January 1989.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Eddy Odijk Martin Rem Jean-Claude Syre

Rights and permissions

Reprints and permissions

Copyright information

© 1989 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Dally, W.J., Wills, D.S. (1989). Universal mechanisms for concurrency. In: Odijk, E., Rem, M., Syre, JC. (eds) PARLE '89 Parallel Architectures and Languages Europe. PARLE 1989. Lecture Notes in Computer Science, vol 365. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3540512845_30

Download citation

  • DOI: https://doi.org/10.1007/3540512845_30

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-51284-4

  • Online ISBN: 978-3-540-46183-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics