8 research outputs found
The architecture of DDMl: a recursively structured data driven machine
Journal ArticleAn architecture for a highly modular, recursively structured class of machines is presented. DDMl is an instance of such a machine structure, and is capable of executing machine language programs which are data driven (data flow) nets. These nets may represent arbitrary amounts of concurrency as well as arbitrary amounts of pipelining. DDMl is a fully distributed multi-processing system composed of completely asynchronous modules. The architecture allows for limitless physical extensibility without necessitating special programming or special hardware to support individual machines of widely varying sizes. DDMl is capable of automatically and dynamically allocating concurrent tasks to the available physical resources. The essential characteristics of the highly parallel, pipelined machine language are also described along with its method for execution on DDMl
Recommended from our members
Pipelining performance of structured dataflow networks
System architectures for interconnecting large numbers of processors are being widely studied [AG82,TH75,TR82]. Of particular interest in such architectures is the exploitation of concurrency among processors. This concurrency can be parallelism, in which different parts of a single data case are processed at the same time, or pipelining, in which different processes are carried out simultaneously on successive data cases. Many problems involving file and vector processing can be viewed as pipelining problems.
Both structured and arbitrarily interconnected networks of processors have been proposed. The asserted advantage of structured networks is that they are easier to comprehend, control, and so utilize effectively (arguments analogous to those made for structured programming [DA72,KO74]). The arguments for arbitrary networks are that they allow greater flexibility of interconnection and so can be more efficient in many cases.
Also, network architectures are being studied incorporating processor activation through data flow [AC82,AG82,DA82,TR82,WA82] and through flow of control [AN75,GA82,TH75].
In all of these cases, attention must be given to developing languages for expressing procedure interconnections and rules for allocating procedures to processors so as to obtain maximum concurrency.
This paper presents a particular approach to specifying procedure interconnection and allocation. The major result is that, within stated assumptions:
networks constructed using a small set of structured process connectives can achieve at least as good throughput (pipelining performance) as arbitrarily interconnected networks
An architecture for a loosely-coupled parallel processor
technical reportAn architecture for a large (e. g. 1000 processor) parallel computer is presented. The processors are loosely-coupled, in the sense that communication among them is fully asynchronous, and each processor is generally not unduly delayed by any immediate need for specific data values. The network supporting this communication is tree shaped, with the individual processors connected at leaf nodes. The machine executes a graphical version of applicative Lisp. The program execution model is demand-driven, with a special deferred interpretation for dotted pair evaluation, termed "lenient cons". Opportunities for concurrency arise in the parallel evaluation of arguments to strict operators, i. e. those known to require evaluation of their full set of arguments. Such opportunities are exploited by exporting function application tasks to neighboring processor nodes in the tree, subject to a hierarchical notion of load balancing. Locality of task allocation and communication is a key objective of the machine. An integrated design toward that end is presented, combining language issues, firm semantic foundations, and anticipated hardware technologies
Dataflow computers: a tutorial and survey
Journal ArticleThe demand for very high performance computer has encouraged some researchers in the computer science field to consider alternatives to the conventional notions of program and computer organization. The dataflow computer is one attempt to form a new collection of consistent systems ideas to improve both computer performance and to alleviate the software design problems induced by the construction of highly concurrent programs