scispace - formally typeset
Search or ask a question

Showing papers on "Fair-share scheduling published in 1990"


Proceedings ArticleDOI
05 Dec 1990
TL;DR: A general criterion for the schedulability of a fixed priority scheduling of period tasks with arbitrary deadlines is given and the results are shown to provide a basis for developing predictable distributed real-time systems.
Abstract: Consideration is given to the problem of fixed priority scheduling of period tasks with arbitrary deadlines. A general criterion for the schedulability of such a task set is given. Worst case bounds are given which generalize the C.L. Liu and J.W. Layland (1973) bound. The results are shown to provide a basis for developing predictable distributed real-time systems. >

867 citations


Proceedings ArticleDOI
05 Dec 1990
TL;DR: The authors first give necessary and sufficient conditions for a sporadic task system to be feasible (i.e., schedulable) and lead to a feasibility test that runs in efficient pseudo-polynomial time for a very large percentage of sporadic task systems.
Abstract: Consideration is given to the preemptive scheduling of hard-real-time sporadic task systems on one processor. The authors first give necessary and sufficient conditions for a sporadic task system to be feasible (i.e., schedulable). The conditions cannot, in general, be tested efficiently (unless P=NP). They do, however, lead to a feasibility test that runs in efficient pseudo-polynomial time for a very large percentage of sporadic task systems. >

740 citations


Journal ArticleDOI
TL;DR: In this article, a comprehensive study of the problem of scheduling broadcast transmissions in a multihop, mobile packet radio network is provided that is based on throughput optimization subject to freedom from interference.
Abstract: A comprehensive study of the problem of scheduling broadcast transmissions in a multihop, mobile packet radio network is provided that is based on throughput optimization subject to freedom from interference. It is shown that the problem is NP complete. A centralized algorithm that runs in polynomial time and results in efficient (maximal) schedules is proposed. A distributed algorithm that achieves the same schedules is then proposed. The algorithm results in a maximal broadcasting zone in every slot. >

498 citations


Journal ArticleDOI
TL;DR: A new scheduling heuristic (MH) is introduced that schedules program modules represented as nodes in a precedence task graph with communication onto arbitrary machine topology taking contention into consideration.

464 citations


Journal ArticleDOI
TL;DR: This paper presents an efficient scheduling algorithm for dynamic scheduling in real-time systems that focuses its attention on a small subset of tasks with the shortest deadlines and is shown to be very effective when the maximum allowable scheduling overhead is fixed.
Abstract: Efficient scheduling algorithms based on heuristic functions are developed for scheduling a set of tasks on a multiprocessor system. The tasks are characterized by worst-case computation times, deadlines, and resources requirements. Starting with an empty partial schedule, each step of the search extends the current partial schedule by including one of the tasks yet to be scheduled. The heuristic functions used in the algorithm actively direct the search for a feasible schedule, i.e. they help choose the task that extends the current partial schedule. Two scheduling algorithms are evaluated by simulation. To extend the current partial schedule, one of the algorithms considers, at each step of the search, all the tasks that are yet to be scheduled as candidates. The second focuses its attention on a small subset of tasks with the shortest deadlines. The second algorithm is shown to be very effective when the maximum allowable scheduling overhead is fixed. This algorithm is hence appropriate for dynamic scheduling in real-time systems. >

349 citations


Journal ArticleDOI
TL;DR: An optimal acceptance test is presented which returns a decision on the basis of the current state of processor load and by considering tasks to be scheduled according to the well known preemptive algorithm Earliest Deadline, the acceptance algorithm and a complexity analysis are presented.
Abstract: While scheduling theory has been developed over a long period of time, it is important to note that most results concern problems with static characteristics. However, a real-time system is dynamic and requires on-line and adaptive scheduling strategies. So, an important aspect of real-time systems research is to devise methods flexible enough to react to a dynamic change of processor load and to attempt to schedule all the tasks judiciously. In this paper, we are particularly concerned with the problem of scheduling tasks which are of two kinds: periodic and sporadic, on a monoprocessor machine. Periodic tasks are independent, run cyclically and their characteristics are known in advance. In addition, we allow for the unpredictable occurrence of aperiodic task groups, with timing and precedence constraints. Clearly, the main problem is to devise a schedulability test that makes it possible to decide whether a new occurring group can be accepted, without upsetting the tight timing behavior requirements. We present an optimal acceptance test which returns a decision on the basis of the current state of processor load and by considering tasks to be scheduled according to the well known preemptive algorithm Earliest Deadline. The acceptance algorithm and a complexity analysis are presented.

242 citations


Proceedings ArticleDOI
01 Apr 1990
TL;DR: It is found that the “smallest number of processes first” (SNPF) scheduling discipline performs poorly, and policies that allocate an equal fraction of the processing power to each job in the system perform better, on the whole, than policies that allocated processing power unequally.
Abstract: Scheduling policies for general purpose multiprogrammed multiprocessors are not well understood. This paper examines various policies to determine which properties of a scheduling policy are the most significant determinants of performance. We compare a more comprehensive set of policies than previous work, including one important scheduling policy that has not previously been examined. We also compare the policies under workloads that we feel are more realistic than previous studies have used. Using these new workloads, we arrive at different conclusions than reported in earlier work. In particular, we find that the “smallest number of processes first” (SNPF) scheduling discipline performs poorly, even when the number of processes in a job is positively correlated with the total service demand of the job. We also find that policies that allocate an equal fraction of the processing power to each job in the system perform better, on the whole, than policies that allocate processing power unequally. Finally, we find that for lock access synchronization, dividing processing power equally among all jobs in the system is a more effective property of a scheduling policy than the property of minimizing synchronization spin-waiting, unless demand for synchronization is extremely high. (The latter property is implemented by coscheduling processes within a job, or by using a thread management package that avoids preemption of processes that hold spinlocks.) Our studies are done by simulating abstract models of the system and the workloads.

219 citations


Proceedings ArticleDOI
01 Jan 1990
TL;DR: Experimental evaluation of the algorithm shows that the heuristics and search techniques incorporated in the algorithm are extremely effective and show that, if a task set can be feasibly allocated and scheduled, the algorithm is highly likely to find it without any backtracking during the search.
Abstract: A static algorithm for allocating and scheduling components of complex periodic tasks across sites in distributed systems is discussed. Besides dealing with the periodicity constraints (which have been the sole concern of many previous algorithms), this algorithm handles precedence, communication, and fault-tolerance requirements of subtasks of the tasks. The algorithm determines the allocation of subtasks of periodic tasks to sites, the scheduled start times of subtasks allocated to a site, and the schedule for communication along the communication channel(s). Experimental evaluation of the algorithm shows that the heuristics and search techniques incorporated in the algorithm are extremely effective. Specifically, they show that, if a task set can be feasibly allocated and scheduled, the algorithm is highly likely to find it without any backtracking during the search. >

209 citations


Journal ArticleDOI
TL;DR: A multiclass closed queueing network with two single-server stations with a large customer population and nearly balanced loading is considered, and a static priority policy that computes an index for each class and awards higher priority at station 1 respectively, station 2 is obtained.
Abstract: We consider a multiclass closed queueing network with two single-server stations. Each class requires service at a particular station, and customers change class after service according to specified probabilities. There is a general service time distribution for each class. The problem is to schedule the two servers to maximize the long-run average throughput of the network. By assuming a large customer population and nearly balanced loading of the two stations, the scheduling problem can be approximated by a dynamic control problem involving Brownian motion. A reformulation of this control problem is solved exactly and the solution is interpreted in terms of the queueing network to obtain a scheduling rule. We conjecture, quite naturally, that the resulting scheduling rule is asymptotically optimal under heavy traffic conditions, but no attempt is made to prove that. The scheduling rule is a static priority policy that computes an index for each class and awards higher priority at station 1 respectively, station 2 to classes with the smaller respectively, larger values of this index. An analytical comparison of this rule to any other static policy is also obtained. An example is given that illustrates the procedure and demonstrates its effectiveness.

172 citations


01 Jan 1990
TL;DR: This work may improve the current practices employed in designing and constructing supervisory control systems by encouraging the use of modern software engineering methodologies and reducing the amount of tuning that is required to produce systems that meet their real-time constraints--while providing improved scheduling, graceful degradation, and more freedom in modifying the system over time.
Abstract: A real-time application is typically composed of a number of cooperating activities that must execute within specific time intervals. Since there are usually more activities to be executed than there are processors on which to execute them, several activities must share a single processor. Necessarily, satisfying the activities' timing constraints is a prime concern in making the scheduling decisions for that processor. Unfortunately, the activities are not independent. Rather, they share data and devices, observe concurrency constraints on code execution, and send signals to one another. These interactions can be modeled as contention for shared resources that must be used by one activity at a time. An activity awaiting access to a resource currently held by another activity is said to depend on that activity, and a dependency relationship is said to exist between them. Dependency relationships may encompass both precedence constraints and resource conflicts. No algorithm solves the problem of scheduling activities with dynamic dependency relationships in a way that is suitable for all real-time systems. This thesis provides an algorithm, called scDASA, that is effective for scheduling the class of real-time systems known as supervisory control systems. Simulation experiments that account for the time required to make scheduling decisions demonstrate that scDASA provides equivalent or superior performance to other scheduling algorithms of interest under a wide range of conditions for parameterized, synthetic workloads. scDASA performs particularly well during overloads, when it is impossible to complete all of the activities. This research makes a number of contributions to the field of computer science, including: a formal model for analyzing scheduling algorithms; the scDASA scheduling algorithm, which integrates resource management with standard scheduling functions; results that demonstrate the efficacy of scDASA in a variety of situations; and a simulator. In addition, this work may improve the current practices employed in designing and constructing supervisory control systems by encouraging the use of modern software engineering methodologies and reducing the amount of tuning that is required to produce systems that meet their real-time constraints--while providing improved scheduling, graceful degradation, and more freedom in modifying the system over time.

166 citations


Journal ArticleDOI
01 Dec 1990
TL;DR: In this article, the authors define a model that allows for communication delays between precedence-related tasks, and propose a classification of various submodels to address certain types of scheduling problems that arise when a parallel computation is to be executed on a multiprocessor.
Abstract: This paper adresses certain types of scheduling problems that arise when a parallel computation is to be executed on a multiprocessor. We define a model that allows for communication delays between precedence-related tasks, and propose a classification of various submodels. We also review complexity results and optimization and approximation algorithms that have been presented in the literature.

Journal ArticleDOI
TL;DR: An effective multiplier method-based differential dynamic programming (DDP) algorithm for solving the hydroelectric generation scheduling problem (HSP) is presented and results demonstrate the efficiency and optimality of the algorithm.
Abstract: An effective multiplier method-based differential dynamic programming (DDP) algorithm for solving the hydroelectric generation scheduling problem (HSP) is presented. The algorithm is developed for solving a class of constrained dynamic optimization problems. It relaxes all constraints but the system dynamics by the multiplier method and adopts the DDP solution technique to solve the resultant unconstrained dynamic optimization problem. The authors formulate the HSP of the Taiwan power system and apply the algorithm to it. Results demonstrate the efficiency and optimality of the algorithm for this application. Computational results indicate that the growth of the algorithm's run time with respect to the problem size is moderate. CPU times of the testing cases are well within the Taiwan Power Company's desirable performance; less than 30 minutes on a VAX/780 mini-computer for a one-week scheduling. >

Journal ArticleDOI
TL;DR: A very general, yet powerful backtracking procedure for solving the duration minimization and net present value maximization problems in a precedence and resource-constrained network of the PERT/CPM variety.

Journal ArticleDOI
TL;DR: The results of experiments conducted using the region scheduling technique in the generation of code for a reconfigurable long instruction word architecture are presented and the advantages of region scheduling over trace scheduling are discussed.
Abstract: Region scheduling, a technique applicable to both fine-grain and coarse-grain parallelism, uses a program representation that divides a program into regions consisting of source and intermediate level statements and permits the expression of both data and control dependencies. Guided by estimates of the parallelism present in regions, the region scheduler redistributes code, thus providing opportunities for parallelism in those regions containing insufficient parallelism compared to the capabilities of the executing architecture. The program representation and the transformations are applicable to both structured and unstructured programs, making region scheduling useful for a wide range of applications. The results of experiments conducted using the technique in the generation of code for a reconfigurable long instruction word architecture are presented. The advantages of region scheduling over trace scheduling are discussed. >

Journal ArticleDOI
03 Jan 1990
TL;DR: Applications of Genetic Algorithms (GAs) to the Job Shop Scheduling (JSS) problem is described and it is believed GAs can be employed as an additional tool in the Computer Integrated Manufacturing (CIM) cycle.
Abstract: We describe applications of Genetic Algorithms (GAs) to the Job Shop Scheduling (JSS) problem. More specifically, the task of generating inputs to the GA process for schedule optimization is addressed. We believe GAs can be employed as an additional tool in the Computer Integrated Manufacturing (CIM) cycle. Our technique employs an extension to the Group Technology (GT) method for generating manufacturing process plans. It positions the GA scheduling process to receive outputs from both the automated process planning function and the order entry function. The GA scheduling process then passes its results to the factory floor in terms of optimal schedules. An introduction to the GA process is discussed first. Then, an elementary n-task, one processor (machine) problem is provided to demonstrate the GA methodology in the JSS problem arena. The technique is then demonstrated on an n-task, two processor problem, and finally, the technique is generalized to the n-tasks on m-processors (serial) case.

Proceedings ArticleDOI
24 Jun 1990
TL;DR: A single high level synthesis algorithm is presented that schedules the operations of a data dependence graph, allocates the necessary hardware, and maps the operations to specific functional units by extending the global analysis approach developed for force-directed scheduling to include individual module instances.
Abstract: A single high-level synthesis algorithm is presented that schedules the operations of a data dependence graph, allocates the necessary hardware and maps the operations to specific functional units. This is achieved by extending the global analysis approach developed for force-directed scheduling to include individual module instances. This new algorithm should be applicable to any behavioral synthesis system that schedules operations from a data dependence graph. >

Proceedings ArticleDOI
C. Le Pape1
13 May 1990
TL;DR: The author advocates a mixed strategy, allowing robots to make and execute individual plans as well as to connect with a central task planner and scheduler when appropriate.
Abstract: Task planning and scheduling techniques developed as part of a project whose goal is to control the operations of many robots in the same environment are presented. Centralized approaches allow task allocation to be improved. However, they are not appropriate for coordinating the actions of multiple mobile robots in a dynamic environment where unforeseeable events occur. Consequently, the author advocates a mixed strategy, allowing robots to make and execute individual plans as well as to connect with a central task planner and scheduler when appropriate. The author first presents individual planning techniques. Then he describes a framework allowing robots to exchange information with a central system able to optimize task allocation. >

Journal ArticleDOI
Jr. Henry S. Warren1
TL;DR: In this paper, the authors describe the scheduling requirements of the IBM RISC System/6000 processor, and a scheduling algorithm for it that is used in two compilers that are used in this paper.
Abstract: For fast execution on the IBM RISC System/6000 processor, instructions should be arranged in an order that uses the arithmetic units as efficiently as possible. This paper describes the scheduling requirements of the machine, and a scheduling algorithm for it that is used in two compilers.

Journal ArticleDOI
01 Jan 1990-Networks
TL;DR: The model deals with the issues of rest-period identification, work/rest period sequencing, and shift scheduling simultaneously and is designed to handle multiple shift cases with time-varying demands.
Abstract: The rotating workforce scheduling problem involves the construction of an efficient sequence of work and rest periods spanning over a number of weeks. This schedule must satisfy the workforce requirements during the different shifts of each day and conform to all the other conditions imposed on the work/rest periods and their sequence. We consider the modeling of the rotating workforce scheduling problem as a network flow problem. All the constraints on the problem are incorporated in the network itself, except for the staff-covering constraints that are treated as side constraints. The optimal solution to the problem corresponds to a path in the network and is identified using a dual-based approach. The model deals with the issues of rest-period identification, work/rest period sequencing, and shift scheduling simultaneously and is designed to handle multiple shift cases with time-varying demands. The procedure, which is capable of solving large-scale problems, is applied to three well-known problems in rotating workforce scheduling. The computational results presented indicate that this procedure provides a useful method for solving large-scale complex problems in workforce scheduling.

Proceedings ArticleDOI
28 May 1990
TL;DR: Two location policies that, by adapting to the system load, capture the advantages of receiver-initiated, sender-in Initiated, and symmetrically initiated algorithms are presented and can be used in conjunction with a broad range of existing transfer policies.
Abstract: Two location policies that, by adapting to the system load, capture the advantages of receiver-initiated, sender-initiated, and symmetrically initiated algorithms are presented. A key feature of these location policies is that they are general and can be used in conjunction with a broad range of existing transfer policies. By means of simulation, two representative algorithms making use of these adaptive location policies are shown to be stable and to improve performance significantly relative to nonadaptive policies. >

Proceedings Article
28 May 1990
TL;DR: In this article, the authors present heuristics that optimally schedule a large portion of the jobs and then attempt to fit in the remainder, based on the linear relaxation solution.
Abstract: We examine scheduling problems where we control not only the assignment of jobs to machines, but also the time used by the job on the machine. For instance, many tooling machines allow control of the speed at which a job is run. Increasing the speed incurs costs due to machine wear, but also increases throughput. We discuss some fundamental scheduling problems in this environment and give algorithms for some interesting cases. Some cases are inherently difficult so for these we give heuristics. Our approach illustrates the exploitation of underlying network structure in combinatorial optimization problems. We create heuristics that optimally schedule a large portion of the jobs and then attempt to fit in the remainder. This also gives a method for quickly finding valid inequalities violated by the linear relaxation solution. For the problem of minimizing the sum of makespan and production costs, a rounding heuristic is within a constant factor of optimal. Our heuristics are compared to other classical heuristics.

Proceedings ArticleDOI
R. Composano1
02 Jan 1990
TL;DR: A path-based scheduling algorithm for synchronous digital systems is presented, which yields solutions with the minimum number of control steps, taking into account arbitrary constraints that limit the amount of operations in each control step.
Abstract: A path-based scheduling algorithm for synchronous digital systems is presented. It yields solutions with the minimum number of control steps, taking into account arbitrary constraints that limit the amount of operations in each control step. The result is a finite-state machine that implements the control. Although the complexity of the algorithm is proportional to the number of paths in the control-flow graph, it is shown to be practical for large examples with thousands of nodes. >

Journal ArticleDOI
TL;DR: The procedure presented is an efficient near-optimal method based on the Lagrangian relaxation technique and the list-scheduling concept that can be used to provide quick answers to what-if questions and to reconfigure the schedule to reincorporate new jobs and other dynamic changes.
Abstract: A methodology is presented for scheduling jobs on identical, parallel machines. Each job comprises a small number of operations that must be processed in a specified order. The objective is to minimize the total weighted quadratic tardiness of the schedule, subject to capacity and precedence constraints. The procedure presented is an efficient near-optimal method based on the Lagrangian relaxation technique and the list-scheduling concept. In addition, the resulting job-interaction information can be used to provide quick answers to what-if questions and to reconfigure the schedule to reincorporate new jobs and other dynamic changes. This scheduling methodology has been implemented in a knowledge-based scheduling system. Typical sizes of problems involve 35 to 40 machines and 100 to 200 jobs, each with 3 to 5 operations. >

Proceedings ArticleDOI
24 Jun 1990
TL;DR: A novel property called well-posedness of timing constraints is analyzed that is used to identify consistency of constraints in the presence of unbounded delay operations, and an approach to relative scheduling that yields a minimum schedule that satisfies the constraints, or detects if no schedule exists, in polynomial time is presented.
Abstract: Scheduling techniques are used in high-level synthesis of integrated circuits. Traditional scheduling techniques assume fixed execution delays for the operations. For the synthesis of ASIC designs that interface with external signals and events, operations with unbounded delays. i.e., delays unknown at compile time, must also be considered. A relative scheduling technique that supports operations with fixed and unbounded delays is presented. The technique satisfies the timing constraints imposed by the user, which places bounds between the activation of operations. A novel property called well-posedness of timing constraints is analyzed that is used to identify consistency of constraints in the presence of unbounded delay operations, and an approach to relative scheduling is presented that yields a minimum schedule that satisfies the constraints, or detects if no schedule exists, in polynomial time. >

Journal ArticleDOI
TL;DR: An important feature of this system, in this view, is the explicit manner in which environmental, procedural and structural knowledge can be used to improve the quality of the generated schedule.
Abstract: This paper reports our effort to develop a knowledge based system for scheduling jobs in a flexible manufacturing system (FMS). We view FMS scheduling as a two-stage process: static scheduling, followed by real-time rescheduling if unanticipated events were to occur. This paper deals with the static scheduling stage. The system uses a frame-based knowledge representation scheme and a problem-solving strategy based on filtered beam search. Filtered beam search views a scheduling problem as a state space search and generates a ‘good’ schedule quickly by controlling the amount of search required. Evaluation functions are used to decide which branches are the most promising. An important feature of this system, in our view, is the explicit manner in which environmental, procedural and structural knowledge, (stored in the knowledge base using a frame-based scheme) can be used to improve the quality of the generated schedule. The system has been implemented and tested using Common Lisp on a Macintosh system with a 3MB main memory and a 40MB hard disk. Computational experience with our system is reported.

Proceedings ArticleDOI
24 Jun 1990
TL;DR: A new interconnect optimization algorithm which is based on several interconnect transformations for multiplexer input collapsing and merging and a linear program based allocation is proposed which uses multifunction ALU cost estimation, and iteratively drives a tree search for scheduling.
Abstract: A new method for high level synthesis is reported whose basic feature is the tight interaction and coupling of the scheduling and allocation phases providing a global direction to synthesis. A linear program based allocation is proposed which uses multifunction ALU cost estimation, and iteratively drives a tree search for scheduling. A major contribution of this paper is a new interconnect optimization algorithm which is based on several interconnect transformations for multiplexer input collapsing and merging. Several other important synthesis aspects are included, e.g. register and interconnect bindings, operation chaining and operation multicycling. The method has been implemented in C on a Sun 3/60,

Proceedings Article
01 Jan 1990
TL;DR: This paper introduces a new problem of scheduling a collection of independent tasks on a multiprocessor, called the partitionable independent task scheduling problem, and presents an approximate algorithm that guarantees a solution within (1+1/p) 2 3333333 of the optimal solution, under a reasonable assumption on the speedup functions.
Abstract: Scheduling a collection of tasks on a multiprocessor, consisting of p processors, that minimizes the maximum completion time has attracted a lot of attention in the literature [12]. In this paper, we introduce a new problem of scheduling a collection of independent tasks on a multiprocessor, called the partitionable independent task scheduling problem. Associated with each task, we are given the time it takes to run on a uniprocessor, and speedup that can be obtained by running it on i processors, 1≤i ≤p . We present an approximate algorithm that guarantees a solution within (1+1/p ) 2 3333333 of the optimal solution, under a reasonable assumption on the speedup functions.

Journal ArticleDOI
TL;DR: A heuristic scheduling and control model for the multi-project, resource constrained scheduling environment, developed for the housing industry, has broad application in a number of multi- project environments.

Journal ArticleDOI
TL;DR: In this paper, a hierarchical decision structure is proposed which includes the following problems: (i) part type selection, determining a subset of part types for simultaneous processing; (ii) machine loading, the allocation of operations and required tools among the machines; (iii) part input sequencing, determining the sequence and timing of release of parts to the system; (iv) operation scheduling, deciding the detailed schedule for processing the parts in the system.

Journal ArticleDOI
TL;DR: In this paper, the problem of optimally scheduling a multiclass open queueing network with four single-server stations in which dynamic control policies are permitted is formulated as a dynamic control problem involving Brownian motion.
Abstract: This paper is concerned with the problem of optimally scheduling a multiclass open queueing network with four single-server stations in which dynamic control policies are permitted. Under the assumption that the system is heavily loaded, the original scheduling problem can be approximated by a dynamic control problem involving Brownian motion. We reformulate and solve this problem and, from the interpretation of the solution, we obtain two dynamic scheduling policies for our queueing network. We compare the performance of these policies with two static scheduling policies and a lower bound via simulation. Our results suggest that under either dynamic policy the system, at least when heavily loaded, exhibits the form of resource pooling given by the solution to the approximating control problem. Furthermore, even when lightly loaded the system performs better under the dynamic policies than under either static policy.