|Gao, Guang R. / Bic, Lubomir / Gaudiot, Jean-Luc|
Advanced Topics in Dataflow Computing and Multithreading
Software Engineering Best Practices
1995. 464 Pages, Hardcover
ISBN 978-0-8186-6542-4 - John Wiley & Sons
Examines recent advances in design, modeling, and implementation of dataflow and multithreaded computers. The text contains reports concerning many of the world's leading projects engaged in the continuing evolution and application of dataflow concepts. It covers the broad range of dataflow principles in program representation -- from language design to processor architecture -- and compiler optimization techniques.
The first section of the book delves into massively parallel distributed memory and multithreaded architecture design, synchronization and pipelined design, and superpipelined data-driven VLSI processors. The next section, on language and programming issues, discusses stream data types, the development of well-structured software, and coarse-grain dataflow programming.
Other parts of the text study parallelization of dataflow programs, an analytical model for the behavior of dataflow graphs, compare a centralized work distribution scheme with a distributed scheme, and present a comprehensive approach to understanding workload management schemes. Altogether, the book introduces the reader to dataflow concepts that show how functional programming ideas can be harnessed to exploit the power of parallel computing.
From the contents
SECTION 1. PROCESSOR DESIGN.
design Principle of Massively Parallel Distributed-Memory Multiprocessor Architecture (M. Amamiya and T. Kawano).
StarT the Next Generation: Integrating Global Caches and Dataflow Architecture (B.S. Ang, et al.).
Synchronization and Pipeline Design for a Multithreaded Massively Parallel Computer (S. Sakai).
Superpipelined Dynamic Data-Driven VLSI Processors (H. Terada, et al.).
SECTION 2. LANGUAGE AND PROGRAMMING ISSUES.
Stream Data Types for Signal Processing (J.B. Dennis).
Multilateral Diagrammatical Specification Environment Based on Data-Driven Paradigm (M. Iwata and H. Terada).
Coarse-Grain Dataflow Programming of Conventional Parallel Computers (R. Jogannathan).
Distributed Data Structure in Thread-Based Programming for a Highly Parallel Dataflow Machine EM-4 (M. Sato, et al.).
Programmability and Performance Issues of Multiprocessors on Hard Nonnumeric Problems (A. Sohn and J.-L. Gaudiot).
SECTION 3. COMPILING.
Exploiting Iteration-Level Parallelism in Dataflow Programs (L. Bic, et al.).
Empirical Study of a Dataflow Language on the CM-5 (D.E. Culler, et al.).
Programming the ADAM Architecture with SISAL (S. Mitrovic).
Can Dataflow Machines Be Programmed with an Imperative Language (S.F. Wail and D. Abramson)?
SECTION 4. RESOURCE MANAGEMENT AND SCHEDULING.
The Token Flow Model (J. Buck and E.A. Lee).
Distributed Task Management in SISAL (M. Haines and A.P.W. Bohm).
Load Balancing and Resource Management in the ADAM Machine (O.C. Maquelin).
Workload Management in Massively Parallel Computers: Some Dataflow Experiences (D.F. Snelling and J.R. Gurd).
Studies on Optimal Task Granularity and Random Mapping (T. Sterling, et al.).
The Effects of Resource Limitations on Program Parallelism (K.B. Theobald, et al.).
SECTION 5. PROGRAM CHARACTERISTICS AND PERFORMANCE STUDIES.
The Dataflow Parallelism of FFT (A.P.W. Bohm and R.E. Hiromoto).
Locality in the Dataflow Paradigm (J. Gottlieb and L..Biran).
Locality and Latency in Hybrid Dataflow (W.A. Najjar, et al.).
Implementation of Manipulator Control Computation on Conventional and Dataflow Multiprocessor (S. Zeng and G.K. Egan).