4 research outputs found
Throughput Maximization in the Speed-Scaling Setting
We are given a set of jobs and a single processor that can vary its speed
dynamically. Each job is characterized by its processing requirement
(work) , its release date and its deadline . We are also given
a budget of energy and we study the scheduling problem of maximizing the
throughput (i.e. the number of jobs which are completed on time). We propose a
dynamic programming algorithm that solves the preemptive case of the problem,
i.e. when the execution of the jobs may be interrupted and resumed later, in
pseudo-polynomial time. Our algorithm can be adapted for solving the weighted
version of the problem where every job is associated with a weight and
the objective is the maximization of the sum of the weights of the jobs that
are completed on time. Moreover, we provide a strongly polynomial time
algorithm to solve the non-preemptive unweighed case when the jobs have the
same processing requirements. For the weighted case, our algorithm can be
adapted for solving the non-preemptive version of the problem in
pseudo-polynomial time.Comment: submitted to SODA 201
Throughput Maximization in Multiprocessor Speed-Scaling
We are given a set of jobs that have to be executed on a set of
speed-scalable machines that can vary their speeds dynamically using the energy
model introduced in [Yao et al., FOCS'95]. Every job is characterized by
its release date , its deadline , its processing volume if
is executed on machine and its weight . We are also given a budget
of energy and our objective is to maximize the weighted throughput, i.e.
the total weight of jobs that are completed between their respective release
dates and deadlines. We propose a polynomial-time approximation algorithm where
the preemption of the jobs is allowed but not their migration. Our algorithm
uses a primal-dual approach on a linearized version of a convex program with
linear constraints. Furthermore, we present two optimal algorithms for the
non-preemptive case where the number of machines is bounded by a fixed
constant. More specifically, we consider: {\em (a)} the case of identical
processing volumes, i.e. for every and , for which we
present a polynomial-time algorithm for the unweighted version, which becomes a
pseudopolynomial-time algorithm for the weighted throughput version, and {\em
(b)} the case of agreeable instances, i.e. for which if and only
if , for which we present a pseudopolynomial-time algorithm. Both
algorithms are based on a discretization of the problem and the use of dynamic
programming
Throughput maximization for speed scaling with agreeable deadlines
International audienceWe study the following energy-efficient scheduling problem. We are given a set of n jobs which have to be scheduled by a single processor whose speed can be varied dynamically. Each job Jj is characterized by a processing requirement (work) pj, a release date rj, and a deadline dj. We are also given a budget of energy E which must not be exceeded and our objective is to maximize the throughput (i.e., the number of jobs which are completed on time). We show that the problem can be solved optimally via dynamic programming in O(n4log nlog P) time when all jobs have the same release date, where P is the sum of the processing requirements of the jobs. For the more general case with agreeable deadlines where the jobs can be ordered so that, for every i< j, it holds that ri≤ rj and di≤ dj, we propose an optimal dynamic programming algorithm which runs in O(n6log nlog P) time. In addition, we consider the weighted case where every job Jj is also associated with a weight wj and we are interested in maximizing the weighted throughput (i.e., the total weight of the jobs which are completed on time). For this case, we show that the problem becomes NP-hard in the ordinary sense even when all jobs have the same release date and we propose a pseudo-polynomial time algorithm for agreeable instances
Throughput Maximization for Speed-Scaling with Agreeable Deadlines
International audienceWe are given a set of n jobs and a single processor that can vary its speed dynamically. Each job J j is characterized by its processing requirement (work) p j , its release date r j and its deadline d j . We are also given a budget of energy E and we study the scheduling problem of maximizing the throughput (i.e. the number of jobs which are completed on time). We show that the problem can be solved by dynamic programming when all the jobs are released at the same time in O(n 4 logn logP), where P is the sum of the processing requirements of the jobs. For the more general case of agreeable deadlines, where the jobs can be ordered such that for every i < j, both r i ≤ r j and d i ≤ d j , we propose a dynamic programming algorithm solving the problem optimally in O(n 6 logn logP). In addition, we consider the weighted case where every job j is also associated with a weight w j and we are interested in maximizing the weighted throughput. For this case, we prove that the problem becomes NP -hard in the ordinary sense and we propose a pseudo-polynomial time algorithm