[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
article
Free access

Indeterminacy, monitors, and dataflow

Published: 01 November 1977 Publication History

Abstract

The work described in this paper began with a desire to include some linguistic concept of a resource manager within a dataflow language we have been designing [AGP76]. In doing so, we discovered that dataflow monitors (resource managers) provide a natural way of thinking about resources and especially their scheduling. Dataflow semantics are based upon a program composed of asynchronous operators interconnected by lines along which data tokens (messages) flow, such that when all of the input tokens for a given operator have arrived then that operator may fire (execute) by absorbing the input tokens, computing, and producing an output token as its result. These operations closely match one's intuitive model of resource managers (operators) passing signals (tokens) to one another for the purpose of synchronizing and scheduling resource usage. Previously though, dataflow languages [D73, K73, W75] have dealt only with the expression of highly asynchronous yet determinate computations; however, resource management characteristically involves indeterminate computation. The introduction here of dataflow monitors and an explicit nondeterministic merge operator for dataflow streams makes dataflow very well suited for expressing interprocess communication and operations on resources.

References

[1]
Arvind and Gostelow, K.P. Some relationships between asynchronous interpreters of a data flow language. Preprints of IFIP Working Conf. on Formal Description of Programming Concepts, Vol. 1, North-Holland, New York, 1977, pp. 4.1-4.25.
[2]
Arvind and Gostelow, K.P. A computer capable of exchanging processing elements for time. Information Processing 77, B. Gilchrist (Ed.), North-Holland, New York, 1977, pp. 849-853.
[3]
Arvind, Gostelow, K.P., and Plouffe, W.E. Programming in a viable data flow language. Technical Report 89, Dept. of Information & Computer Science, Univ. of California, Irvine, CA, Aug. 1976.
[4]
Brinch Hansen, P.Operating Systems Principles. Prentice-Hall, Englewood Cliffs, NJ, 1973.
[5]
Courtois, P.J., Heymans, F., and Parnas, D.L. Concurrent control with "readers" and "writers". Comm. ACM 14, 10 (Oct. 1971), 667-668.
[6]
Dennis, J.B. First version of a data flow procedure language. Computation Structures Group Memo 92, Lab. for Computer Science, Cambridge, MA, Nov. 1973. (Revised in Aug. 1974; reissued as Technical Memorandum 61, May 1975.)
[7]
Dennis, J.B. and Misunas, D.P. A preliminary architecture for a basic data-flow processor. Proc. Second Annual Symp. on Computer Architecture, Jan. 1975, pp. 126-132.
[8]
Hoare, C.A.R. Monitors: An operating system structuring concept. Comm. ACM 17, 10 (Oct. 1974), 549-557.
[9]
Karp, R.M. and Miller, R.E. Parallel program schemata. J. Comptr. Sys. Sci. 3, 2 (May 1969), 147-195.
[10]
Kosinski, P.R. A data flow language for operating systems programming. SIGPLAN Notices (ACM) 8, 9 (Sept. 1973), 89-94.
[11]
Patil, S.S. Closure properties of interconnections of determinate systems. Record of the Project MAC Conf. On Concurrent Systems and Parallel Computation, June 1970, pp. 107-116.
[12]
Petri, C.A. Kommunikation mit automaten. Institut fur Angewandte Mathematik| der Universitat Bonn, Wegelerstrasse 10, Bonn, 1962.
[13]
Rodriguez, J.E. A graph model for parallel computation. MAC-TR-64, Project MAC, M.I.T., Cambridge, MA, Sept. 1969.
[14]
Weng, K.-S. Stream-oriented computation in recursive data flow schemas. Lab. for Computer Science, Cambridge, MA, Oct. 1975.

Cited By

View all
  • (2024)Revet: A Language and Compiler for Dataflow Threads2024 IEEE International Symposium on High-Performance Computer Architecture (HPCA)10.1109/HPCA57654.2024.00016(1-14)Online publication date: 2-Mar-2024
  • (2023)NoC-based hardware software co-design framework for dataflow thread managementThe Journal of Supercomputing10.1007/s11227-023-05335-879:16(17983-18020)Online publication date: 11-May-2023
  • (2021)An Introduction to Controlflow and Dataflow SupercomputingHandbook of Research on Methodologies and Applications of Supercomputing10.4018/978-1-7998-7156-9.ch001(1-4)Online publication date: 2021
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM SIGOPS Operating Systems Review
ACM SIGOPS Operating Systems Review  Volume 11, Issue 5
November 1977
175 pages
ISSN:0163-5980
DOI:10.1145/1067625
Issue’s Table of Contents
  • cover image ACM Conferences
    SOSP '77: Proceedings of the sixth ACM symposium on Operating systems principles
    November 1977
    180 pages
    ISBN:9781450378673
    DOI:10.1145/800214
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: 01 November 1977
Published in SIGOPS Volume 11, Issue 5

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)107
  • Downloads (Last 6 weeks)26
Reflects downloads up to 06 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Revet: A Language and Compiler for Dataflow Threads2024 IEEE International Symposium on High-Performance Computer Architecture (HPCA)10.1109/HPCA57654.2024.00016(1-14)Online publication date: 2-Mar-2024
  • (2023)NoC-based hardware software co-design framework for dataflow thread managementThe Journal of Supercomputing10.1007/s11227-023-05335-879:16(17983-18020)Online publication date: 11-May-2023
  • (2021)An Introduction to Controlflow and Dataflow SupercomputingHandbook of Research on Methodologies and Applications of Supercomputing10.4018/978-1-7998-7156-9.ch001(1-4)Online publication date: 2021
  • (2019)Degree-of-Node Task Scheduling of Fine-Grained Parallel Programs on Heterogeneous SystemsJournal of Computer Science and Technology10.1007/s11390-019-1962-434:5(1096-1108)Online publication date: 6-Sep-2019
  • (2005)M-structures: Extending a parallel, non-strict, functional language with stateFunctional Programming Languages and Computer Architecture10.1007/3540543961_26(538-568)Online publication date: 6-Jul-2005
  • (2005)Streams and managersOperating Systems Engineering10.1007/3-540-11604-4_66(452-465)Online publication date: 1-Jun-2005
  • (2005)Scenarios: A model of non-determinate computationFormalization of Programming Concepts10.1007/3-540-10699-5_102(252-259)Online publication date: 24-May-2005
  • (1986)Primitives for resource management in a demand-driven reduction modelInternational Journal of Parallel Programming10.1007/BF0141455515:3(215-244)Online publication date: 1-Jun-1986
  • (1984)Dataflow resource managers and their synthesis from open path expressionsIEEE Transactions on Software Engineering10.1109/TSE.1984.501023310:3(244-256)Online publication date: 26-May-1984
  • (1982)Toward an algebra of nondeterministic programsProceedings of the 1982 ACM symposium on LISP and functional programming10.1145/800068.802155(235-242)Online publication date: 15-Aug-1982
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media