A Comparison of Some Theoretical Models of Parallel Computation

In this paper we briefly describe and compare a number of theoretical models for parallel computation; namely, Petri nets, computation graphs, and parallel program schemata. We discuss various problems and properties of parallel computation that can be studied within these formulations and indicate the ties between these properties and the more practical aspects of parallel computation. We show how marked graphs, a particular type of Petri net, are a restricted type of computation graph and indicate how some results of marked graphs can be obtained from known results of computation graphs. Also, for schemata we discuss the decidability versus undecidability of various properties and several techniques of schemata composition.

[1]  Edsger W. Dijkstra,et al.  Solution of a problem in concurrent programming control , 1965, CACM.

[2]  Raymond Reiter,et al.  Scheduling Parallel Computations , 1968, J. ACM.

[3]  Thomas H. Bredt A survey of models for parallel computing , 1970 .

[4]  M. Lehman,et al.  A survey of problems and preliminary results concerning parallel processing and parallel processors , 1966 .

[5]  John A. Gosden,et al.  Explicit parallel processing description and control in programs for multi- and uni-processor computers , 1899, AFIPS '66 (Fall).

[6]  Vadim E. Kotov Towards automatical construction of parallel programs , 1972, International Sympoisum on Theoretical Programming.

[7]  Richard M. Karp,et al.  Parallel Program Schemata , 1969, J. Comput. Syst. Sci..

[8]  Raymond E. Miller A boundary between decidability and undecidability for parallel program schemata (Extended Abstract) , 1972 .

[9]  A. S. Narinyani Looking for an approach to a theory of models for parallel computation , 1972, International Sympoisum on Theoretical Programming.

[10]  C. V. Ramamoorthy,et al.  A survey of techniques for recognizing parallel processable streams in computer programs , 1899, AFIPS '69 (Fall).

[11]  S. F. Anderson,et al.  The IBM system/360 model 91: floating-point execution unit , 1967 .

[12]  John Cocke,et al.  Configurable computers: a new class of general purpose machines , 1972, International Sympoisum on Theoretical Programming.

[13]  Fred L. Luconi,et al.  Output Functional Computational Structures , 1968, SWAT.

[14]  D. N. Senzig,et al.  Computer organization for array processing , 1965, AFIPS '65 (Fall, part I).

[15]  Carl Hewitt,et al.  Comparative Schematology , 1970 .

[16]  Donald R. Slutz,et al.  Flow graph schemata , 1970 .

[17]  J. Ian Munro,et al.  Optimal Algorithms for Parallel Polynomial Evaluation , 1971, J. Comput. Syst. Sci..

[18]  Daniel L. Slotnick,et al.  The SOLOMON computer , 1962, AFIPS '62 (Fall).

[19]  Bertram Bussell,et al.  Parallel Processing in a Restructurable Computer System , 1963, IEEE Trans. Electron. Comput..

[20]  Michael J. Flynn,et al.  Detection and Parallel Execution of Independent Instructions , 1970, IEEE Transactions on Computers.

[21]  David C. Luckham,et al.  On Formalised Computer Programs , 1970, J. Comput. Syst. Sci..

[22]  A. S. Narinyani,et al.  On transformation of sequential programs into asynchronous parallel programs , 1968, IFIP Congress.

[23]  Jack B. Dennis,et al.  Programming generality, parallelism and computer architecture , 1968, IFIP Congress.

[24]  Melvin E. Conway,et al.  A multiprocessor system design , 1899, AFIPS '63 (Fall).

[25]  Jean-Loup Baer,et al.  Legality and Other Properties of Graph Models of Computations , 1970, JACM.

[26]  A. Bährs Operation patterns , 1972, International Sympoisum on Theoretical Programming.

[27]  Donald E. Knuth,et al.  Additional comments on a problem in concurrent programming control , 1966, CACM.

[28]  Gerald Estrin,et al.  Models of Computations and Systems—Evaluation of Vertex Probabilities in Graph Models of Computations , 1967, JACM.

[29]  Raymond E. Miller Some Undecidability Results for Parallel Program Schemata , 1972, SIAM J. Comput..

[30]  J. Schwartz Large Parallel Computers , 1966, JACM.

[31]  Franklyn Thomas Bradshaw Structure and representation of digital computer systems , 1971 .

[32]  R. Karp,et al.  Properties of a model for parallel computations: determinacy , 1966 .

[33]  Joseph D. Rutledge On Ianov's Program Schemata , 1964, JACM.

[34]  J. Gregory,et al.  The SOLOMON Computer , 1963, IEEE Trans. Electron. Comput..

[35]  William R. Graham The impact of future developments in computer technology , 1971 .

[36]  Tien Chi Chen Unconventional superspeed computer systems , 1971, AFIPS '71 (Spring).

[37]  Robert M. Shapiro,et al.  THE REPRESENTATION OF ALGORITHMS , 1969 .

[38]  Robert L. Davis,et al.  The ILLIAC IV Processing Element , 1969, IEEE Transactions on Computers.

[39]  Suhas S. Patil,et al.  Closure properties of interconnections of determinate systems , 1970, Project MAC Conference on Concurrent Systems and Parallel Computation.

[40]  C. V. Ramamoorthy,et al.  Recognition and representation of parallel processable streams in computer programs-II (Task/process Parallelism) , 1969, ACM '69.

[41]  A. Haller,et al.  Automatic Program Analysis , 1974 .

[42]  Edsger W. Dijkstra,et al.  Co-operating sequential processes , 1968 .

[43]  V. E. Itkin,et al.  On Program Schemata Equivalence , 1972, J. Comput. Syst. Sci..

[44]  W. Miranker A Survey of Parallelism in Numerical Analysis , 1971 .

[45]  Luigi Logrippo,et al.  Renamings in Program Schemas (Extended Abstract) , 1972, Scandinavian Workshop on Algorithm Theory.

[46]  Arthur J. Bernstein,et al.  Analysis of Programs for Parallel Processing , 1966, IEEE Trans. Electron. Comput..

[47]  Anatol Holt,et al.  Events and conditions: introduction , 1970 .

[48]  Richard M. Brown,et al.  The ILLIAC IV Computer , 1968, IEEE Transactions on Computers.

[49]  C. V. Ramamoorthy,et al.  Program Suitability for Parallel Processing , 1971, IEEE Transactions on Computers.

[50]  David W. Anderson,et al.  The IBM System/360 model 91: machine philosophy and instruction-handling , 1967 .

[51]  Richard M. Karp,et al.  The Organization of Computations for Uniform Recurrence Equations , 1967, JACM.

[52]  Robert M. Keller On the Decomposition of Asynchronous Systems , 1972, SWAT.

[53]  C. W. Rose,et al.  LOGOS and the software engineer , 1899, AFIPS '72 (Fall, part I).

[54]  Joseph D. Rutledge,et al.  Program Schemata as Automata: Part I , 1970, SWAT.

[55]  Jack B. Dennis Modular, asynchronous control structures for a high performance processor , 1970 .

[56]  R. M. Tomasulo,et al.  An efficient algorithm for exploiting multiple arithmetic units , 1995 .

[57]  Raymond E. Miller,et al.  On the Composition of Parallel Program Schemata , 1971, SWAT.

[58]  Michael J. Flynn,et al.  The IBM system/360 model 91: some remarks on system development , 1967 .

[59]  Amir Pnueli,et al.  Marked Directed Graphs , 1971, J. Comput. Syst. Sci..

[60]  David J. Kuck ILLIAC IV Software and Application Programming , 1968, IEEE Transactions on Computers.

[61]  Robert M. Keller,et al.  On Maximally Parallel Schemata , 1970, SWAT.

[62]  John C. Murtha,et al.  Highly Parallel Information Processing Systems , 1966, Adv. Comput..

[63]  Jack B. Dennis,et al.  Data flow schemas , 1972, International Sympoisum on Theoretical Programming.

[64]  Richard Craig Holt,et al.  On deadlock in computer systems , 1971 .