YDS Algorithm

Energy Minimization
with Deadline Feasibility
Rachel Ferst
Alan Papir
Motivation

Since the early 1970s, the power densities in
microprocessors has doubled
every three years.



Power consumption of computing
devices rising exponentially.
Cooling costs rising exponentially.
Energy consumption is a
problem for battery operated
devices.

Battery capacity increasing at a rate slower than
power consumption is growing.
Problem

Two energy minimization problems



Energy minimization with deadline feasibility
Minimizing flow time and energy processes
without deadlines
Two papers of interest:


YDS. A Scheduling Model for Reduced CPU
Energy. [YDS, 1995]
Pruhs, et al. Getting the Best Response
for Your Erg. [Pruhs, 2008]
Problem

Variable speed processor


Allows an operating system to reduce energy
consumption by scheduling jobs at different speeds
while meeting deadline requirements.
Scope


Implemented YDS algorithm under different sets of
data and compared with naïve models
Discuss Pruhs, et al. approach
YDS Algorithm

Off-line algorithm that computes the minimumenergy schedule for any set of jobs.



Power function must be convex
We used P(s) = s3
An instance of the scheduling problem is the set J of
jobs to be executed during a fixed time interval [t0,t1]
defined by:



Arrival time, aj
Deadline, bj
Required number of CPU cycles Rj
YDS Algorithm

Notation:

A schedule is a pair S=(s(t),job(t))

s(t) is the speed at time t
 job(t) defines the job or idleness being executed at
time t
Let the interval of a job j be [aj,bj].


A schedule is feasible if S
gives each job j the required
number of CPU cycles
between
its arrival time and deadline
(with preemption possible).
YDS Algorithm
Definitions


Energy:
Let the intensity, g(I), of an interval, I=[z,z’] be
Where the sum is taken over all jobs with aj,bj contained in the
interval [z,z’]
 g(I) is a lower bound on the average speed needed in interval I


Call I*=[z,z’] a critical interval for J if I*
maximizes g(I), and the set of jobs within that
interval the critical group, JI*.
YDS Algorithm

Algorithm
1. Schedule the jobs in JI* by EDD policy. Run
all jobs in JI* at speed g(I*)
2. Modify the problem to reflect the deletion
of JI* and I*.
• Remove jobs JI* from J.
•
Update arrival times and deadlines to ensure no job
outside of JI* is scheduled in the interval I*.
Naïve Algorithms

Created two algorithms that guarantee a
deadline feasible solution with little regard for
energy consumption:

Naïve 1: Run each job, j, at a speed such that the
completion time of job j is min[release time of j+1,
deadline of j].
i
Naïve 2: Find the minimum speed
necessary to complete every job before
its deadline. Run every job at that speed.
Data
Results
Results
Results
Results
A World Without Deadlines

Deadline feasibility may not be realistic…
i
i

Most processes do not have
natural deadlines.
Windows and Unix do not
have deadline based
schedulers
So, how do we measure quality of service?

Average flow time
A World Without Deadlines

Bi-criteria optimization problem




Minimize average flow time
Minimize energy consumed
Objectives are contradictory
Methodology:


Bound one objective and optimize the other
More natural to bound energy
A World Without Deadlines
Works Cited
Questions?