Dataflow machine architecture
- 11 December 1986
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Computing Surveys
- Vol. 18 (4) , 365-396
- https://doi.org/10.1145/27633.28055
Abstract
Dataflow machines are programmable computers of which the hardware is optimized for fine-grain data-driven parallel computation. The principles and complications of data-driven execution are explained, as well as the advantages and costs of fine-grain parallelism. A general model for a dataflow machine is presented and the major design options are discussed.Most dataflow machines described in the literature are surveyed on the basis of this model and its associated technology. For general-purpose computing the most promising dataflow machines are those that employ packet-switching communication and support general recursion. Such a recursion mechanism requires an extremely fast mechanism to map a sparsely occupied virtual space to a physical space of realistic size. No solution has yet proved fully satisfactory.A working prototype of one processing element is described in detail. On the basis of experience with this prototype, some of the objections raised against the dataflow approach are discussed. It appears that the overhead due to fine-grain parallelism can be made acceptable by sophisticated compiling and employing special hardware for the storage of data structures. Many computing-intensive programs show sufficient parallelism. In fact, a major problem is to restrain parallelism when machine resources tend to get overloaded. Another issue that requires further investigation is the distribution of computation and data structures over the processing elements.Keywords
This publication has 23 references indexed in Scilit:
- Sructure Handling in Data-Flow SystemsIEEE Transactions on Computers, 1986
- Implementation and evaluation of a list-processing-oriented data flow machineACM SIGARCH Computer Architecture News, 1986
- DFSP: A Data Flow Signal ProcessorIEEE Transactions on Computers, 1986
- The Manchester prototype dataflow computerCommunications of the ACM, 1985
- Modeling the Weather with a Data Flow SupercomputerIEEE Transactions on Computers, 1984
- A Second Opinion on Data Flow Machines and LanguagesComputer, 1982
- Data Flow SupercomputersComputer, 1980
- Performance of a Simulated Dataflow ComputerIEEE Transactions on Computers, 1980
- A Flow Analysis Procedure for the Translation of High-Level Languages to a Data Flow LanguageIEEE Transactions on Computers, 1980
- Some Computer Organizations and Their EffectivenessIEEE Transactions on Computers, 1972