Results 1 - 10
of
50
Stochastic Scheduling
, 1999
"... There is a current need for scheduling policies that can leverage the performance variability of resources on multiuser clusters. We develop one solution to this problem called stochastic scheduling that utilizes a distribution of application execution performance on the target resources to determin ..."
Abstract
-
Cited by 77 (12 self)
- Add to MetaCart
There is a current need for scheduling policies that can leverage the performance variability of resources on multiuser clusters. We develop one solution to this problem called stochastic scheduling that utilizes a distribution of application execution performance on the target resources to determine a performance-efficient schedule. In this paper, we define a stochastic scheduling policy based on time-balancing for data parallel applications whose execution behavior can be represented as a normal distribution. Using three distributed applications on two contended platforms, we demonstrate that a stochastic scheduling policy can achieve good and predictable performance for the application as evaluated by several performance measures.
Minimizing Memory Requirements in Rate-Optimal Schedules
, 1994
"... In this paper we address the problem of minimizing buffer storage requirement in constructing rate-optimal compile-time schedules for multi-rate dataflow graphs. We demonstrate that this problem, called the Minimum Buffer Rate-Optimal (MBRO) scheduling problem, can be formulated as a unified linear ..."
Abstract
-
Cited by 29 (2 self)
- Add to MetaCart
In this paper we address the problem of minimizing buffer storage requirement in constructing rate-optimal compile-time schedules for multi-rate dataflow graphs. We demonstrate that this problem, called the Minimum Buffer Rate-Optimal (MBRO) scheduling problem, can be formulated as a unified linear programming problem. A novel feature of our method is that it tries to minimize the memory requirement while simultaneously maximizing the computation rate. We have constructed an experimental testbed which implements our scheduling algorithm as well as (i) the widely used periodic admissible parallel schedules proposed by Lee and Messerschmitt [12], (ii) the optimal scheduling buffer allocation (OSBA) algorithm of Ning and Gao [15], and (iii) the multi-rate software pipelining (MRSP) algorithm [7]. The experimental results have demonstrated a significant improvement in buffer requirements for the MBRO schedules compared to the schedules generated by the other three methods. Compared to bloc...
A Hierarchical Multiprocessor Scheduling System for DSP Applications
- In Proceedings of the IEEE Asilomar Conference on Signals, Systems, and Computers
, 1995
"... This paper discusses a hierarchical scheduling framework which reduces the complexity of scheduling synchronous dataflow (SDF) graphs onto multiple processors. The core of this framework is a clustering algorithm that decreases the number of nodes before expanding the SDF graph into a precedence dir ..."
Abstract
-
Cited by 28 (8 self)
- Add to MetaCart
This paper discusses a hierarchical scheduling framework which reduces the complexity of scheduling synchronous dataflow (SDF) graphs onto multiple processors. The core of this framework is a clustering algorithm that decreases the number of nodes before expanding the SDF graph into a precedence directed acyclic graph (DAG). The internals of the clusters are then scheduled with uniprocessor SDF schedulers which can optimize for memory usage. The clustering is done in such a manner as to leave ample parallelism exposed for the multiprocessor scheduler. We have developed the SDF composition theorem for testing if a clustering step is valid. The advantages of this framework are demonstrated with several practical, real-time examples. 1 Motivation Dataflow is a natural representation for signal processing algorithms. One of its strengths is that it exposes parallelism by expressing only the actual data dependencies that exist in an algorithm. Applications are specified by a dataflow grap...
Generating Compact Code From Dataflow Specifications Of Multirate Signal Processing Algorithms
- IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS — I: FUNDAMENTAL THEORY AND APPLICATIONS
, 1995
"... Synchronous dataflow (SDF) semantics are well-suited to representing and compiling multirate signal processing algorithms. A key to this match is the ability to cleanly express iteration without overspecifying the execution order of computations, thereby allowing efficient schedules to be constructe ..."
Abstract
-
Cited by 26 (16 self)
- Add to MetaCart
Synchronous dataflow (SDF) semantics are well-suited to representing and compiling multirate signal processing algorithms. A key to this match is the ability to cleanly express iteration without overspecifying the execution order of computations, thereby allowing efficient schedules to be constructed. Due to limited program memory, it is often desirable to translate the iteration in an SDF graph into groups of repetitive firing patterns so that loops can be constructed in the target code. This paper establishes fundamental topological relationships between iteration and looping in SDF graphs, and presents a scheduling framework that provably synthesizes the most compact looping structures for a large class of practical SDF graphs. By modularizing different components of the scheduling framework, and establishing their independence, we show how other scheduling objectives, such as minimizing data buffering requirements or increasing the number of data transfers that occur in registers, ...
Compile-time scheduling of dynamic constructs in dataflow program graphs
- IEEE Transactions on Computers
, 1997
"... Abstract|Scheduling data ow graphs onto processors consists of assigning actors to processors, ordering their execution within the processors, and specifying their ring time. While all scheduling decisions can be made at runtime, the overhead is excessive for most real systems. To reduce this overhe ..."
Abstract
-
Cited by 19 (2 self)
- Add to MetaCart
Abstract|Scheduling data ow graphs onto processors consists of assigning actors to processors, ordering their execution within the processors, and specifying their ring time. While all scheduling decisions can be made at runtime, the overhead is excessive for most real systems. To reduce this overhead, compile-time decisions can be made for assigning and/or ordering actors on processors. Compile-time decisions are based on known pro les available for each actor at compile time. The pro le of an actor such as the execution time and the communication patterns. However, a dynamic construct within a macro actor, such as a conditional and a data-dependent iteration, makes the pro le of the actor unpredictable at compile time. For those constructs, we propose to assume some pro le at compile-time and de ne a cost to be minimized when deciding on the pro le under the assumption that the runtime statistics are available at compile-time. Our decisions on the pro les of dynamic constructs are shown to be optimal under some bold assumptions, and expected to be near-optimal in most cases. The proposed scheduling technique has been implemented as one of the rapid prototyping facilities in Ptolemy. This paper presents the preliminary results on the performance with synthetic examples.
Looped Schedules for Dataflow Descriptions of Multirate DSP Algorithms
- Journal of Formal Methods in System Design
, 1993
"... The synchronous dataflow (SDF) programming paradigm has been used extensively in design environments for multirate signal processing applications. In this paradigm, the repetition of computations is specified by the relative rates at which the computations consume and produce data. This implicit spe ..."
Abstract
-
Cited by 18 (9 self)
- Add to MetaCart
The synchronous dataflow (SDF) programming paradigm has been used extensively in design environments for multirate signal processing applications. In this paradigm, the repetition of computations is specified by the relative rates at which the computations consume and produce data. This implicit specification of iteration allows a compiler to easily explore alternative nested loops structures for the target code with respect to their effects on code size, buffering requirements and throughput. In this paper, we develop important relationships between the SDF description of an algorithm and the range of looping structures offered by this description, and we discuss how to improve code efficiency by applying these relationships. 1 Introduction Synchronous dataflow (SDF) is a restricted form of the dataflow model of computation [5]. In the dataflow model, a program is represented as a directed graph. The nodes of the graph, also called actors, represent computations and the arcs represent...
Memory Management for Dataflow Programming of Multirate Signal Processing Algorithms
- IEEE TRANSACTIONS ON SIGNAL PROCESSING
, 1994
"... Managing the buffering of data along arcs is a critical part of compiling a synchronous dataflow (SDF) program. This paper shows how dataflow properties can be analyzed at compile-time to make buffering more efficient. Since the target code corresponding to each node of an SDF graph is normally obta ..."
Abstract
-
Cited by 17 (4 self)
- Add to MetaCart
Managing the buffering of data along arcs is a critical part of compiling a synchronous dataflow (SDF) program. This paper shows how dataflow properties can be analyzed at compile-time to make buffering more efficient. Since the target code corresponding to each node of an SDF graph is normally obtained from a hand-optimized library of predefined blocks, the efficiency of data transfer between blocks is often the limiting factor in how closely an SDF compiler can approximate meticulous manual coding. Furthermore, in the presence of large sample-rate changes, straightforward buffering techniques can quickly exhaust limited on-chip data memory, necessitating the use of slower external memory. The techniques presented in this paper address both of these problems in a unified manner.
Minimizing Buffer Requirements under Rate-Optimal Schedule in Regular Dataflow Networks
- Journal of VLSI Signal Processing
, 1994
"... Large-grain synchronous dataflow graphs or multi-rate graphs have the distinct feature that the nodes of the dataflow graph fire at different rates. Such multi-rate large-grain dataflow graphs have been widely regarded as a powerful programming model for DSP applications. In this paper we propose a ..."
Abstract
-
Cited by 15 (0 self)
- Add to MetaCart
Large-grain synchronous dataflow graphs or multi-rate graphs have the distinct feature that the nodes of the dataflow graph fire at different rates. Such multi-rate large-grain dataflow graphs have been widely regarded as a powerful programming model for DSP applications. In this paper we propose a method to minimize buffer storage requirement in constructing rate-optimal compile-time (MBRO) schedules for multi-rate dataflow graphs. We demonstrate that the constraints to minimize buffer storage while executing at the optimal computation rate (i.e. the maximum possible computation rate without storage constraints) can be formulated as a unified linear programming problem in our framework. A novel feature of our method is that it tries to minimize the memory requirement while simultaneously maximizing the computation rate. We have constructed an experimental testbed which implements our MBRO scheduling algorithm as well as (i) the widely used periodic admissible parallel schedules (also ...
A Comparative Study of DSP Multiprocessor List Scheduling Heuristics
, 1993
"... This paper presents a quantitative comparison of a collection of DSP multiprocessor list scheduling heuristics which consider inter-processor communication delays. The following aspects have been addressed: (1) performance in terms of the total execution time (makespan), (2) sensitivity of heuristic ..."
Abstract
-
Cited by 14 (2 self)
- Add to MetaCart
This paper presents a quantitative comparison of a collection of DSP multiprocessor list scheduling heuristics which consider inter-processor communication delays. The following aspects have been addressed: (1) performance in terms of the total execution time (makespan), (2) sensitivity of heuristics in terms of the characteristics of acyclic precedence graphs, including graph size and graph parallelism, (3) sensitivity of heuristics to the number of processors, and (4) compile time efficiency. In addition, the effectiveness of list scheduling performance enhancement techniques is examined. The main contributions of this paper are: ffl Contrary to the belief of some previous authors, our study indicates that no single published list scheduling heuristic consistently produces the best schedules under all possible program structures and DSP multiprocessor configurations. We believe this fact is very important to designers of DSP multiprocessor scheduling heuristics. ffl Based on such o...
DIF: An interchange format for dataflow-based design tools
- in Proceedings of the International Workshop on Systems, Architectures, Modeling, and Simulation, Samos
, 2004
"... Abstract. The dataflow interchange format (DIF) is a textual language that is geared towards capturing the semantics of graphical design tools for DSP system design. A key objective of DIF is to facilitate technology transfer across dataflow-based DSP design tools by providing a common, extensible s ..."
Abstract
-
Cited by 14 (10 self)
- Add to MetaCart
Abstract. The dataflow interchange format (DIF) is a textual language that is geared towards capturing the semantics of graphical design tools for DSP system design. A key objective of DIF is to facilitate technology transfer across dataflow-based DSP design tools by providing a common, extensible semantics for representing coarse-grain dataflow graphs, and recognizing useful sub-classes of dataflow models. DIF captures essential modeling information that is required in dataflow-based analysis and optimization techniques, such as algorithms for consistency analysis, scheduling, memory management, and block processing, while optionally hiding proprietary details such as the actual code that implements the dataflow blocks. Accompanying DIF is a software package of intermediate representations and algorithms that operate on application models that are captured through DIF. This paper describes the structure of the DIF language together with several implementation and usage examples. 1

