A decoupled data-driven architecture with vectors and macro actors
This paper presents the implementation of scientific programs on a decoupled data-driven architecture with vectors and macro actors. This hybrid multiprocessor combines the dynamic data-flow principles of execution with the control-flow of the von Neumann model of execution. The two major ideas utilized by the decoupled model are: vector and macro actors with variable resolution, and asynchronous execution of graph and computation operations. The compiler generates graphs with various-sized actors in order to match the characteristics of the computation. For instance, vector actors are proposed for many aspects of scientific computing while lower resolution (complier-generated collection of scalar actors) or higher resolution (scalar actors) is used for unvectorizable programs. A block-scheduling technique for extracting more parallelism from sequential constructs is incorporated in the decoupled architecture. In addition a graph-level priority-scheduling mechanism is implemented that improves resource utilization and yields higher performance. A graph unit executes all graph operations and a computation unit executes all computation operations. The independence of the two main units of the machine allows the efficient pipelined execution of macro actors with diverse granularity characteristics.
Unable to display preview. Download preview PDF.
- P. Evripidou and J.-L. Gaudiot, “A decoupled graph/computation data-driven architecture with variable resolution actors,” in Proceedings of the 1990 International Conference on Parallel Processing, August 1990.Google Scholar
- P. Treleaven, R. Hopkins, and P. Rautenbach, “Combining data flow and control flow computing,” Computer Journal, vol. 25, no. 2, 1982.Google Scholar
- W. Najjar and J.-L. Gaudiot, “Multi-level execution in data-flow architectures,” in Proceedings of the 1987 International Conference on Parallel Processing, St. Charles, IL, pp. 32–39, August 1987.Google Scholar
- K. Hiraki, S. Sekiguchi, and T. Shimada, “Efficient vector processing on a Dataflow Supercomputer SIGMA-1,” in Proceedings of Supercomputing '88, 1988.Google Scholar
- Arvind and K. Gostelow, “The U-Interpreter,” IEEE Computer, pp. 42–49, February 1982.Google Scholar
- J. McGraw, S. Skedzielewski, S. Allan, D. Grit, R. Oldehoeft, J. Glauert, I. Dobes, and P. Hohensee, “SISAL-Streams and Iterations in a Single Assignment Language, Language Reference Manual, Version 1.2,” Tech. Rep. TR M-146, University of California — Lawrence Livermore Laboratory, March 1985.Google Scholar
- P. Evripidou and J.-L. Gaudiot, “The USC decoupled multilevel data-flow execution model,” in Advanced Topics in Data-Flow Computing, Prentice Hall, 1990. In press.Google Scholar
- P. Evripidou and J.-L. Gaudiot, “Some scheduling techniques for numerical algorithms in a simulated Data-Flow multiprocessor,” in Proceedings of the Parallel Computing 89, Elsevier Science Publishers B.V., August 1989.Google Scholar
- Arvind and R. Thomas, “I-structures: An Efficient Data Type for Functional languages,” Tech. Rep. LCS/TM-178, Massachusetts Institute of Technology, Laboratory for Computer Science, June 1980.Google Scholar