300 likes | 415 Views
Speed Scaling to Manage Energy and Temperature. Nikhil Bansal, Tracy Kimbrel and Kirk Pruhs Published in ACM Journal March 2007 Presented by Ayan Banerjee. Energy and temperature in computing. Energy is required for Computing The conversion not exact
E N D
Speed Scaling to Manage Energy and Temperature Nikhil Bansal, Tracy Kimbrel and Kirk Pruhs Published in ACM Journal March 2007 Presented by Ayan Banerjee
Energy and temperature in computing • Energy is required for Computing • The conversion not exact • Result: Much heat dissipated to the atmosphere. Wastage of Energy. • Temperature proportional to Energy dissipation • Result : Thermal Runaway • We need to cool computing systems. • Cooling costs increasing exponentially with energy consumption
Power Management • Device Engineer promise low power transistors • Packing Density increases so does the power consumption (more and more features in the processor) • Hence Power Management.
Processor Level Power Management • Voltage Scaling: Dynamically vary the voltage at which the processor operates • Speed Scaling: Dynamically vary the speed at which the processor operates (also called frequency scaling) • Voltage and Speed are interdependent
Contribution of the paper • Provides a theoretical study of several online speed scaling policies to minimize energy, instantaneous power and to minimize the maximum temperature reached by the processor. • Proves that the offline YDS scheduling algorithm provided by Yao et al [1995] is optimal with respect to energy. • Introduces the concept of cooling oblivious speed scaling algorithms • Proposes an online algorithm BKP for speed scaling • Proves that their algorithm is e – competitive with respect to maximum speed • Also they proves that no other online speed scaling algorithm can have a lower competitive ratio than the BKP algorithm. • Reduces the problem of (offline) speed scaling to minimize the maximum temperature to a convex programming problem and uses the Ellipsoid algorithm to prove that it is solvable in linear time.
Power Model • The power P dissipated by a processor running at speed s is given by: • In standard CMOS circuits we have
Thermal Model • Very simplistic first order approximate thermal model • Assumptions: • Heat lost via conduction only • Ambient temperature of the environment surrounding the device is constant • Device is assumed to cool down following Newton’s law • Thus the cooling equation : here “a” and “b” are constants. “a” depends on the material of the device and “b” depends on the cooling arrangement. So “b” is called the cooling parameter. • Cooling is exponential
Definitions • Task: A task i consists of a certain amount of work that needs to be completed within a release time and a deadline • Schedule: A schedule S specifies for each time the task to run and the speed at which to run the task. • Speed : Speed is the amount of work performed by the processor in unit time. • E[S] : It is the energy used by a schedule S. • T[S] : It is the maximum temperature reached by the processor while following the schedule S. • c – interval : It is an interval of length • C[S] : It is the maximum energy expended in a c – interval for the schedule S. (problem of minimizing the maximum temperature is closely related to the problem of minimizing C[S]) • If A is a scheduling algorithm then A(I) denotes the schedule output by A for an input task pool I. • E[A(I)] denotes the energy expended for the schedule A(I) • T[A(I)] denotes the maximum temperature reached by the processor while running A(I)
R - competitive or R - approximate • A schedule is R – competitive or R – approximate for a particular objective function if the value of that objective function on the schedule is R times the value of the objective function on the optimal schedule. • An online scheduling algorithm is R – competitive if A(I) is R – competitive for all instances I. • An offline scheduling algorithm is R – approximate if A(I) is R – approximate for all instances I.
“Cooling Oblivious” An algorithm is cooling oblivious if it is O(1) competitive with respect to temperature for all cooling parameters
More definitions • denotes the total work that needs to be done in time interval that is composed by tasks which have and • is the intensity for time interval and is given by
YDS Algorithm Yao et al [1995] • It is an offline speed scaling algorithm so it already knows the task pool. • Step 1: Search and obtain the maximum intensity time interval • Step 2: Processor runs at speed during always running released unfinished task with earliest deadline • Step 3: Modify all deadlines as and all release times as go to step 1
Properties of YDS • YDS is optimal with respect to Energy • YDS does not produce optimal solution for minimizing the maximum temperature problem • YDS schedule is 20 – approximate with respect to temperature for all . • YDS schedule is “Cooling Oblivious”.
Average Rate Algorithm • Associated with each job i an average rate can be defined as • At time t run the processor at speed s(t) on given by: • This summation is on the already released jobs and at each time interval the processor runs on the job with the earliest deadline
Optimum Available • At time t run at speed w(t)/t on the job with earliest deadline where w(t) is the work that is unfinished and has deadline within next t units of time. • Alternatively it can be stated as a YDS schedule on the present state.
Properties of AVR and OA • Competitive ratio of AVR and OA is with respect to energy • AVR and OA are not O(1) competitive with respect to temperature • AVR and OA are not “Cooling Oblivious”
BKP Algorithm • is the amount of work that has release time at least and deadline at most and which has already arrived at time t. • At time t work on the unfinished task with earliest deadline at speed • The speed at which the processor runs at time t for the BKP Algorithm is an estimate of the speed at which the YDS algorithm would have run at time t. • The only difference being BKP requires and to follow a certain relationship.
Properties of BKP Algorithm • It is with respect to energy • The competitive ratio of BKP is better than that of OA and AVR for • BKP is e – competitive with respect to maximum speed • Hence it is competitive with respect to maximum power • No other online scheduling algorithm is more optimal than BKP with respect to maximum speed and maximum temperature. • BKP is not “Cooling Oblivious”
Problem of minimizing Maximum Temperature • Find a schedule which will finish all the jobs before the deadline but will never allow the temperature of the processor to rise above the red line • maximum work that can be done starting at time at temperature and ending at time at temperature with at all times in the schedule. • is only feasible if
Formulation of the problem • Divide the time duration into time intervals demarcated by the release times and deadlines of each job • represents the temperature at time instant • J(i) denotes set of tasks j that can be feasibly executed during the time interval • denotes the work done on the task j during time interval
Convex Problem 2. 3. 4. 5. 6.
Solution • The convex problem can be solved using Ellipsoid algorithm in linear time • Although Ellipsoid algorithm promises linear time solution no fast enough practical implementation exists • In some cases Ellipsoid algorithm takes more time than Simplex Algorithm which has exponential running time in worst case
Contributions revisited • Shows that YDS is energy optimal. So use it as benchmark. • Sets a lower bound on the problem of maximizing power or maximizing speed in online speed scaling algorithms • Introduces the notion of cooling oblivious algorithms • Provides optimal solution for minimizing the maximum temperature problem • Gives a framework for the analytical studies of speed scaling algorithms
Critique • Excellent theoretical study • Very simple thermal model • No practical implementation • Do we prefer cooling oblivious algorithms?
Relation to our class • Power management is an important issue in architecture design • The focus of this class is on the emerging trends of multi-core architecture and power aware or energy aware architecture design is an important issue in the present context. • This paper discusses a method for power management by speed scaling.
Relation to my Project • “Power management in Data Centers” • Task Placement • There is a speed scaling version of scheduling algorithms • This paper provides a strong theoretical background in the analysis of these algorithms • Aim is to apply already existing task placement algorithms to a real datacenter scenario and analyze the results.
Thank You Questions?