Record of the Project MAC conference on concurrent systems and parallel computation

  • Authors:
  • Jack B. Dennis

  • Affiliations:
  • Cambridge, Massachusetts

  • Venue:
  • Record of the Project MAC conference on concurrent systems and parallel computation
  • Year:
  • 1970

Quantified Score

Hi-index 0.00

Visualization

Abstract

Interest in the study of concurrency and parallelism in systems and in computation is rapidly increasing, and the concepts evolving from this interest seem destined to have profound influence on the future course of computing practice. The Project MAC Conference on Concurrent Systems and Parallel Computation was arranged to encourage intercommunication among workers in four distinct but intimately related lines of conceptual development in this field. The oldest line concerns the concept of speed independent sequential circuits, first formulated definitively by David Muller. Associated with this concept is the notion of building digital systems in the form of modules that intercommunicate by asynchronous signalling. Although the design of the Illiac II computer was influenced by the concept of speed independent logic, only recently have Muller's ideas been adopted by others as a subject of serious research. The papers in Part II of these proceedings are representative of current thinking in this area. The second line of research has been called "systemics" by Anatol Holt who is singularly responsible for its development in the United States. Systemics is the result of many years' study of alternative methods of representing the behavior of complex systems. The present form of the material developed from the acquaintance of Holt with the ideas of Carl Adam Petri expressed in his dissertation to the University at Bonn, Germany. Part I of this Record is the first formal publication of the work of Holt and his colleagues, and we hope it will be as stimulating to the neophyte as it has been to those of us fortunate enough to have had informal access to these ideas. In 1957 the Russian, Y. I. Yanov, published his first study of properties possessed by the "logical schemes" of programs regardless of the "interpretation" assigned to their operators and predicates to specify a particular algorithm. All of the more recent work on computation schemata (by Karp and Miller, Paterson, Rodriguez, and others) has evolved directly and indirectly from the work of Yanov. Yanov considered all data of a program to be represented by the value of a single variable, and he studied strictly sequential execution. In this context it is easily shown that the equivalence problem for schemata, as formulated by Yanov, is solvable. Subsequent work has been directed at relaxing the conditions imposed by Yanov and formulating generalized schemata that are more adequate models of actual computer programs. The result has been the discovery that the decidability of many questions about schemata (and equivalence in particular) are very sensitive to the choice of definition. At this time it is not known how close one can come to a reasonably complete class of schemata for programs such that the equivalence problem for the class can be solved. The papers in Part III are a sampling of recent work in this area. The use of "process" as a precise concept in discussing design problems of multiprogrammed computer systems became current at Project MAC, MIT, in 1964. About the same time (Fall 1965) Edsger Dijkstra's report Cooperating Sequential Processes became available, and it was evident that he had devoted much attention to understanding orderly means for implementing systems of interacting processes. Dijkstra's student, A. N. Habermann, carried out a mathematical study of processes cooperating according to a certain discipline and developed an elegant solution to the problem of preventing deadlocks (Dijkstra's "deadly embrace") when several processes compete for the use of limited quantities of shared resources. The paper by Prakash Hebalkar in Part IV is one of several current studies aimed at extending Habermann's work. The concept of process has had considerable influence on the practice of implementing multiprogrammed and time-shared computer systems. The paper by Jim Gray is a discussion of practical considerations with respect to locking by one who is familiar with advanced concepts in both the theory and practice of computation. The paper by Dennis Tsichritzis is a new suggestion for a mathematical notion of process. The four lines of development are related in various ways. Fundamentally, the same sort of mathematics is appropriate for the formal study of the various models. Clearly, there is a correspondence among systems represented by Petri nets and systems built from asynchronous control modules. See, for example, the paper by Jack Dennis in Part II. Although Suhas Patil has shown how to implement any Petri net as a modular system, many theoretical and practical questions about this relationship are as yet unanswered. Most forms of computation schemata have two parts --- a data flow structure and a control --- for example, the flow graph schemata of Donald Slutz discussed in Part III of this Record. The controls of schemata are naturally represented as Petri nets or as interconnections of control modules. The question of whether a control network is "wellformed" has been studied by Bruno and Altman, and is analogous to the question of whether a program graph is "hang-up free" analyzed by Rodriguez. Determinacy is another topic that is relevant to any consideration of concurrent systems operation. In one of the earliest formal studies of determinacy Earl Van Horn established the possibility of multiprocess computer systems in which determinate computation could be guaranteed. The same idea was applied to parallel schemata by Rarp and Miller, and by Rodriguez. Patil, in Part II of this Record, discusses the conditions under which determinate systems may be combined to realize larger determinate systems. One very interesting subject is the search for canonical forms --- for various classes of computation schemata and for Petri nets and modular systems. The discovery of a canonical form for a class of Petri nets or control structures will probably provide a canonical form for a corresponding class of computation schemata and may lead to further positive results in connection with the general problem of deciding equivalence of schemata. Included in this Record is a descriptor-indexed bibliography of literature most relevant to the topics of the Conference. This list should be valuable to anyone interested in pursuing related research. Invitations to the conference were sent to persons who have made important contributions to these areas, to the best of our knowledge. We tried to cover as many institutions as possible, and attempted to seek our graduate students who were engaged in related research. Unfortunately, several persons whom we would have liked to attend the conference were unable to participate. In particular, no one from the group led by Wesley Clark at Washington University, Saint Louis, was able to attend owing to conflicting commitments. This group is developing practical "macromodules" that may be easily connected to construct systems without concern for timing hazards, lead length, etc. Also, because of a last-minute emergency, Anatol Holt was unable to be present. Nevertheless, the work at Applied Data research was admirably championed by Fred Commoner. My colleagues Suhas Patil and Prakash Hebalkar provided invaluable assistance in planning and making arrangements for the Conference. We express our gratitude to Mr. John Gillis of the National Academy of Sciences for their kind permission to use the Houston House at Woods Hole, which proved an ideal setting for such an informal meeting. Mr. Robert Armstrong was very helpful in acquainting us with the facilities of the House and providing assistance whenever it was needed. The conference was sponsored by Project MAC and we are pleased that Professor Licklider, Director of Project MAC, gave his enthusiastic support. The publication of this conference record was made possible by the cooperation of the participants in providing papers of high quality even though they were not subect to the usual refereeing process. We are pleased that the Association for Computing Machinery has found our request that they publish and distribute the Record a reasonable one, and thank Peter Denning for his assistance in making publication arrangements. Finally, Anne Rubin who prepared the final draft with unusual accuracy, made my task of editing these proceedings much easier than I had anticipated. Jack B. DennisCambridge, MassachusettsAugust, 1970