Static scheduling of synchronous data flow programs for digital signal processing
Large grain data flow (LGDF) programming is natural and convenient for describing digital signal processing (DSP) systems, but its runtime overhead is costly in real time or cost-sensitive applications. In some situations, designers are not willing to squander computing resources for the sake of programmer convenience. This is particularly true when the target machine is a programmable DSP chip. However, the runtime overhead inherent in most LGDF implementations is not required for most signal processing systems because such systems are mostly synchronous (in the DSP sense). Synchronous data flow (SDF) differs from traditional data flow in that the amount of data produced and consumed by a data flow node is specified a priori for each input and output. This is equivalent to specifying the relative sample rates in signal processing system. This means that the scheduling of SDF nodes need not be done at runtime, but can be done at compile time (statically), so the runtime overhead evaporates. The sample rates can all be different, which is not true of most current data-driven digital signal processing programming methodologies. Synchronous data flow is closely related to computation graphs, a special case of Petri nets. This self-contained paper develops the theory necessary to statically schedule SDF programs on single or multiple processors. A class of static (compile time) scheduling algorithms is proven valid, and specific algorithms are given for scheduling SDF systems onto single or multiple processors.
- Research Organization:
- Dept. of Electrical Engineering and Computer Science, Univ. of California, Berkeley, CA 94720
- OSTI ID:
- 7190136
- Journal Information:
- IEEE Trans. Comput.; (United States), Vol. C-36:1
- Country of Publication:
- United States
- Language:
- English
Similar Records
Data Locality Enhancement of Dynamic Simulations for Exascale Computing (Final Report)
Parallel program debugging with flowback analysis
Related Subjects
ARRAY PROCESSORS
DATA-FLOW PROCESSING
ALGORITHMS
COMPUTER CODES
DATA PROCESSING
DIGITAL COMPUTERS
GRAPHS
PERFORMANCE
SIGNALS
SYNCHRONIZATION
TASK SCHEDULING
TIME DEPENDENCE
COMPUTERS
MATHEMATICAL LOGIC
PROCESSING
PROGRAMMING
990210* - Supercomputers- (1987-1989)