Results 1  10
of
59
Proportionate progress: A notion of fairness in resource allocation
 Algorithmica
, 1996
"... Given a set of n tasks and m resources, where each task x has a rational weight x:w = x:e=x:p; 0 < x:w < 1, a periodic schedule is one that allocates a resource to a task x for exactly x:e time units in each interval [x:p k; x:p (k + 1)) for all k 2 N. We de ne a notion of proportionate progress, ca ..."
Abstract

Cited by 241 (25 self)
 Add to MetaCart
Given a set of n tasks and m resources, where each task x has a rational weight x:w = x:e=x:p; 0 < x:w < 1, a periodic schedule is one that allocates a resource to a task x for exactly x:e time units in each interval [x:p k; x:p (k + 1)) for all k 2 N. We de ne a notion of proportionate progress, called Pfairness, and use it to design an e cient algorithm which solves the periodic scheduling problem. Keywords: Euclid's algorithm, fairness, network ow, periodic scheduling, resource allocation.
Algorithms and Complexity Concerning the Preemptive Scheduling of Periodic, RealTime Tasks on One Processor
 RealTime Systems
, 1990
"... We investigate the preemptive scheduling of periodic, realtime task systems on one processor. First, we show that when all parameters to the system are integers, we may assume without loss of generality that all preemptions occur at integer time values. We then assume, for the remainder of the pape ..."
Abstract

Cited by 179 (13 self)
 Add to MetaCart
We investigate the preemptive scheduling of periodic, realtime task systems on one processor. First, we show that when all parameters to the system are integers, we may assume without loss of generality that all preemptions occur at integer time values. We then assume, for the remainder of the paper, that all parameters are indeed integers. We then give as our main lemma both necessary and sufficient conditions for a task system to be feasible on one processor. Although these conditions cannot, in general, be tested efficiently (unless P = NP), they do allow us to give efficient algorithms for deciding feasibility on one processor for certain types of periodic task systems. For example, we give a pseudopolynomial time algorithm for synchronous systems whose densities are bounded by a fixed constant less than 1. This algorithm represents an exponential improvement over the previous best algorithm. We also give a polynomialtime algorithm for systems having a fixed number of distinct typ...
Implications of Classical Scheduling Results For RealTime Systems
 IEEE COMPUTER
, 1995
"... Important classical scheduling theory results for realtime computing are identified. Implications of these results from the perspective of a realtime systems designer are discussed. Uniprocessor and multiprocessor results are addressed as well as important issues such as future release times, pre ..."
Abstract

Cited by 121 (1 self)
 Add to MetaCart
Important classical scheduling theory results for realtime computing are identified. Implications of these results from the perspective of a realtime systems designer are discussed. Uniprocessor and multiprocessor results are addressed as well as important issues such as future release times, precedence constraints, shared resources, task value, overloads, static versus dynamic scheduling, preemption versus nonpreemption, multiprocessing anomalies, and metrics. Examples of what scheduling algorithms are used in actual applications are given.
Fast Scheduling of Periodic Tasks on Multiple Resources
 In Proceedings of the 9th International Parallel Processing Symposium
"... Given n periodic tasks, each characterized by an execution requirement and a period, and m identical copies of a resource, the periodic scheduling problem is concerned with generating a schedule for the n tasks on the m resources. We present an algorithm that schedules every feasible instance of t ..."
Abstract

Cited by 100 (15 self)
 Add to MetaCart
Given n periodic tasks, each characterized by an execution requirement and a period, and m identical copies of a resource, the periodic scheduling problem is concerned with generating a schedule for the n tasks on the m resources. We present an algorithm that schedules every feasible instance of the periodic scheduling problem, and runs in O(minfm lg n; ng) time per slot scheduled. 1 Introduction Given a set \Gamma of n tasks, where each task x is characterized by two integer parameters x:e and x:p, and m identical copies of a resource, a periodic schedule is one that allocates a resource to each task x in \Gamma for exactly x:e time units in each interval [k \Delta x:p; (k+1) \Delta x:p) for all k in N, subject to the following constraints: Constraint 1: A resource can only be allocated to a task for an entire "slot" of time, where for each i in N slot i is the unit interval from time i to time i + 1. Constraint 2: No task may be allocated more than one copy of the resource ...
Approximation Techniques for Average Completion Time Scheduling
, 1997
"... We consider the problem of nonpreemptive scheduling to minimize average (weighted) completion time, allowing for release dates, parallel machines, and precedence constraints. Recent work has led to constantfactor approximations for this problem, based on solving a preemptive or linear programming ..."
Abstract

Cited by 82 (8 self)
 Add to MetaCart
We consider the problem of nonpreemptive scheduling to minimize average (weighted) completion time, allowing for release dates, parallel machines, and precedence constraints. Recent work has led to constantfactor approximations for this problem, based on solving a preemptive or linear programming relaxation and then using the solution to get an ordering on the jobs. We introduce several new techniques which generalize this basic paradigm. We use these ideas to obtain improved approximation algorithms for onemachine scheduling to minimize average completion time with release dates. In the process, we obtain an optimal randomized online algorithm for the same problem that beats a lower bound for deterministic online algorithms. We consider extensions to the case of parallel machine scheduling, and for this we introduce two new ideas: first, we show that a preemptive onemachine relaxation is a powerful tool for designing parallel machine scheduling algorithms that simultaneously pro...
Scheduling Algorithms
, 1997
"... Introduction Scheduling theory is concerned with the optimal allocation of scarce resources to activities over time. The practice of this field dates to the first time two humans contended for a shared resource and developed a plan to share it without bloodshed. The theory of the design of algorith ..."
Abstract

Cited by 63 (1 self)
 Add to MetaCart
Introduction Scheduling theory is concerned with the optimal allocation of scarce resources to activities over time. The practice of this field dates to the first time two humans contended for a shared resource and developed a plan to share it without bloodshed. The theory of the design of algorithms for scheduling is younger, but still has a significant historythe earliest papers in the field were published more than forty years ago. Scheduling problems arise in a variety of settings, as is illustrated by the following examples: Example 1: Consider the central processing unit of a computer that must process a sequence of jobs that arrive over time. In what order should the jobs be processed in order to minimize, on average, the time that a job is in the system from arrival to completion? Example 2: Consider a team of five astronauts preparing for the reentry of their space shuttle into the at
Scheduling Hard RealTime Systems: A Review
, 1991
"... Recent results in the application of... this paper. The review takes the form of an analysis of the problems presented by different application requirements and characteristics. Issues covered include uniprocessor and multiprocessor systems, periodic and aperiodic processes, static and dynamic algor ..."
Abstract

Cited by 48 (7 self)
 Add to MetaCart
Recent results in the application of... this paper. The review takes the form of an analysis of the problems presented by different application requirements and characteristics. Issues covered include uniprocessor and multiprocessor systems, periodic and aperiodic processes, static and dynamic algorithms, transient overloads and resource usage. Protocols that limit and reduce blocking are discussed. Considerations are also given to scheduling Ada tasks.
Improved Algorithms For Bipartite Network Flow
, 1994
"... In this paper, we study network flow algorithms for bipartite networks. A network G = (V; E) is called bipartite if its vertex set V can be partitioned into two subsets V 1 and V 2 such that all edges have one endpoint in V 1 and the other in V 2 . Let n = jV j, n 1 = jV 1 j, n 2 = jV 2 j, m = jE ..."
Abstract

Cited by 42 (6 self)
 Add to MetaCart
In this paper, we study network flow algorithms for bipartite networks. A network G = (V; E) is called bipartite if its vertex set V can be partitioned into two subsets V 1 and V 2 such that all edges have one endpoint in V 1 and the other in V 2 . Let n = jV j, n 1 = jV 1 j, n 2 = jV 2 j, m = jEj and assume without loss of generality that n 1 n 2 . We call a bipartite network unbalanced if n 1 ø n 2 and balanced otherwise. (This notion is necessarily imprecise.) We show that several maximum flow algorithms can be substantially sped up when applied to unbalanced networks. The basic idea in these improvements is a twoedge push rule that allows us to "charge" most computation to vertices in V 1 , and hence develop algorithms whose running times depend on n 1 rather than n. For example, we show that the twoedge push version of Goldberg and Tarjan's FIFO preflow push algorithm runs in O(n 1 m + n 3 1 ) time and that the analogous version of Ahuja and Orlin's excess scaling algori...
Variable Voltage Task Scheduling Algorithms for Minimizing Energy/Power
, 1999
"... In this paper we propose variable voltage task scheduling algorithms that minimize energy or minimize peak power for the case when the task arrival times, deadline times, execution times, periods and switching activities are given. We consider aperiodic (earliest due date, earliest deadline first), ..."
Abstract

Cited by 32 (2 self)
 Add to MetaCart
In this paper we propose variable voltage task scheduling algorithms that minimize energy or minimize peak power for the case when the task arrival times, deadline times, execution times, periods and switching activities are given. We consider aperiodic (earliest due date, earliest deadline first), as well as periodic (rate monotonic, earliest deadline first) scheduling algorithms. We use the Lagrange multiplier method to theoretically determine the relation between the task voltages such that the energy or peak power is minimum, and then develop an iterative algorithm that tries to satisfy the relation. We propose two implementations of the iterative algorithm: a low complexity one and an exact one. The asymptotic complexity of the existing scheduling algorithms change very mildly with the application of the proposed algorithms. We show experimentally (random experiments as well as reallife cases), that the voltage assignment obtained by the proposed low complexity algorithm is very close to that of the optimal energy (0.1% error) and optimal peak power (1% error) assignment. Furthermore, we consider the e#ect of the delay to change the converter voltage and the clock frequency.
A formally verified applicationlevel framework for realtime scheduling on posix realtime operating systems
 IEEE Trans. Software Engineering
, 2004
"... Abstract—This paper presents a framework, called meta scheduler, for implementing realtime scheduling algorithms. The meta scheduler is a portable middleware layer component designed for implementations over POSIXcompliant operating systems. It accommodates pluggable realtime scheduling algorithm ..."
Abstract

Cited by 24 (16 self)
 Add to MetaCart
Abstract—This paper presents a framework, called meta scheduler, for implementing realtime scheduling algorithms. The meta scheduler is a portable middleware layer component designed for implementations over POSIXcompliant operating systems. It accommodates pluggable realtime scheduling algorithms while offering the flexibility of platform independence —the singular underlying OS requirement is the now nearly ubiquitous POSIX compliance. The versatility of pluggable schedulers positions the meta scheduler for deployment in an interoperable heterogeneous realtime environment. We present the design of the meta scheduler and outline its implementation. Furthermore, we present a mechanized correctness verification using the UPPAAL model checker. Prototype implementation of the meta scheduler over QNX Neutrino realtime operating system demonstrates high performance and a small footprint. Index Terms—Realtime scheduling, time/utility functions, utility accrual scheduling, Portable Operating System Interface (POSIX), model checking.