Implementation of a general purpose dataflow multiprocessor

Dataflow is one of the major models of parallel computation. Implementation of a General Purpose Dataflow Multiprocessor extends work in this area by introducing an unusually simple model of dynamic dataflow execution, called the Explicit Token Store (ETS) architecture, and its realization in Monsoon, a large-scale dataflow multiprocessor. Monsoon is currently under construction at the Motorola Microcomputer Division. Papadopoulos argues that the underlying sequential architecture of contemporary multiprocessors has not been able to support the synchronization demands of parallel execution and that these systems have largely failed to meet expectations for programmability and performance. He points out that processors must be fundamentally changed to execute a parallel machine language that coordinates parallel activities efficiently as instructions are scheduled. Although dataflow architectures have met this challenge by radically reformulating the basic specification of a machine program, they have suffered from substantial implementation shortcomings, notable the need for large associative memories. The ETS architecture Papadopoulos introduces here achieves the power of previous tagged-token dataflow architectures, but with a much leaner cycle and much less complexity. Gregory Papadopoulos is an Assistant Professor of Electrical Engineering and Computer Science in the Laboratory for Computer Science at MIT. Contents: General Purpose Multiprocessing. The TaggedToken Dataflow Architecture. The Explicit Token Store. Compiling for an ETS Dataflow Processor. Compiling Imperative Languages for an ETS. Monsoon: An ETS Multiprocessor. A Monsoon Instruction Decoding.

[1]  Alan H. Karp,et al.  Programming for Parallelism , 1987, Computer.

[2]  B J Smith,et al.  A pipelined, shared resource MIMD computer , 1986 .

[3]  Wil Plouffe,et al.  An asynchronous programming language and computing machine , 1978 .

[4]  Charles L. Seitz,et al.  The cosmic cube , 1985, CACM.

[5]  Kevin P. McAuliffe,et al.  The IBM Research Parallel Processor Prototype (RP3): Introduction and Architecture , 1985, ICPP.

[6]  David E. Culler,et al.  Dataflow architectures , 1986 .

[7]  Jack J. Dongarra,et al.  Performance of various computers using standard linear equations software in a Fortran environment , 1987, SGNM.

[8]  K. R. Traub,et al.  A COMPILER FOR THE MIT TAGGED-TOKEN DATAFLOW ARCHITECTURE , 1986 .

[9]  David A. Mandell Experiences and Results Multitasking a Hydrodynamics Code on Global and Local Memory Machines , 1987, ICPP.

[10]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[11]  Robert A. Iannucci,et al.  A dataflow/von Neumann hybrid architecture , 1988 .

[12]  Robert H. Halstead,et al.  MULTILISP: a language for concurrent symbolic computation , 1985, TOPL.

[13]  David E. Culler,et al.  The price of parallelism , 1987 .

[14]  Arvind,et al.  Executing a Program on the MIT Tagged-Token Dataflow Architecture , 1990, IEEE Trans. Computers.

[15]  David E. Culler,et al.  Resource requirements of dataflow programs , 1988, [1988] The 15th Annual International Symposium on Computer Architecture. Conference Proceedings.

[16]  H. Trease,et al.  Parallel processing a real code—a case history , 1989 .

[17]  K. Ekanadham,et al.  The price of asynchronous parallelism: an analysis of dataflow architectures , 1989 .

[18]  Roger W. Hockney Classification and Evaluation of Parallel Computer Systems , 1987, Parallel Computing in Science and Engineering.

[19]  Ron Cytron,et al.  An overview of the PTRAN analysis system for multiprocessing , 1988, J. Parallel Distributed Comput..

[20]  Keshav Pingali,et al.  I-structures: Data structures for parallel computing , 1986, Graph Reduction.

[21]  John Glauert,et al.  SISAL: streams and iteration in a single assignment language. Language reference manual, Version 1. 2. Revision 1 , 1985 .

[22]  Vivek Sarkar,et al.  Partitioning and scheduling parallel programs for execution on multiprocessors , 1987 .

[23]  Jack J. Dongarra Performance of various computers using standard linear equations software in a Fortran environment , 1983, CARN.

[24]  Ian Watson,et al.  The Manchester prototype dataflow computer , 1985, CACM.

[25]  BackusJohn Can programming be liberated from the von Neumann style , 1978 .

[26]  Arvind,et al.  Future Scientific Programming on Parallel Machines , 1988, J. Parallel Distributed Comput..

[27]  Arvind,et al.  Resource managers in functional programming , 1984, J. Parallel Distributed Comput..

[28]  J. W. Backus,et al.  Can programming be liberated from the von Neumann style , 1977 .

[29]  David A. Padua,et al.  A Second Opinion on Data Flow Machines and Languages , 1982, Computer.

[30]  Olaf M. Lubeck,et al.  Supercomputer Performance: The Theory, Practice, and Results , 1988, Adv. Comput..

[31]  D J Kuck,et al.  Parallel Supercomputing Today and the Cedar Approach , 1986, Science.

[32]  Arvind,et al.  Two Fundamental Issues in Multiprocessing , 1987, Parallel Computing in Science and Engineering.

[33]  Ken Kennedy,et al.  PFC: A Program to Convert Fortran to Parallel Form , 1982 .

[34]  David E. Culler,et al.  Managing resources in a parallel machine , 1986 .

[35]  Jack B. Dennis,et al.  Data Flow Supercomputers , 1980, Computer.

[36]  James R. McGraw,et al.  Exploiting multiprocessors: issues and options , 1987 .

[37]  R D Rettberg Development of a Voice Funnel System , 1982 .