1 Scheduling on Heterogeneous Machines: Minimize Total Energy + Flowtime Ravishankar Krishnaswamy Carnegie Mellon University Joint work with Anupam Gupta.

Slides:



Advertisements
Similar presentations
VARUN GUPTA Carnegie Mellon University 1 Partly based on joint work with: Anshul Gandhi Mor Harchol-Balter Mike Kozuch (CMU) (CMU) (Intel Research)
Advertisements

Minimizing Average Flow-Time Naveen Garg IIT Delhi Joint work with Amit Kumar, Jivi Chadha,V Muralidhara, S. Anand.
Best-Effort Top-k Query Processing Under Budgetary Constraints
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 14: March 3, 2004 Scheduling Heuristics and Approximation.
Optimal-Complexity Optical Router Hadas Kogan, Isaac Keslassy Technion (Israel)
S ELFISH M IGRATE : A Scalable Algorithm for Non-clairvoyantly Scheduling Heterogeneous Processors Janardhan Kulkarni, Duke University Sungjin Im (UC Merced.
Approximation Algorithms for Capacitated Set Cover Ravishankar Krishnaswamy (joint work with Nikhil Bansal and Barna Saha)
Regret Minimization and the Price of Total Anarchy Paper by A. Blum, M. Hajiaghayi, K. Ligett, A.Roth Presented by Michael Wunder.
Online Scheduling with Known Arrival Times Nicholas G Hall (Ohio State University) Marc E Posner (Ohio State University) Chris N Potts (University of Southampton)
Scheduling with Outliers Ravishankar Krishnaswamy (Carnegie Mellon University) Joint work with Anupam Gupta, Amit Kumar and Danny Segev.
Computer science is a field of study that deals with solving a variety of problems by using computers. To solve a given problem by using computers, you.
RUN: Optimal Multiprocessor Real-Time Scheduling via Reduction to Uniprocessor Paul Regnier † George Lima † Ernesto Massa † Greg Levin ‡ Scott Brandt ‡
Power Management Algorithms An effort to minimize Processor Temperature and Energy Consumption.
1 Better Scalable Algorithms for Broadcast Scheduling Ravishankar Krishnaswamy Carnegie Mellon University Joint work with Nikhil Bansal and Viswanath Nagarajan.
Soft Real-Time Semi-Partitioned Scheduling with Restricted Migrations on Uniform Heterogeneous Multiprocessors Kecheng Yang James H. Anderson Dept. of.
11Sahalu JunaiduICS 573: High Performance Computing5.1 Analytical Modeling of Parallel Programs Sources of Overhead in Parallel Programs Performance Metrics.
An O(1) Approximation Algorithm for Generalized Min-Sum Set Cover Ravishankar Krishnaswamy Carnegie Mellon University joint work with Nikhil Bansal (IBM)
Maryam Elahi Fairness in Speed Scaling Design Joint work with: Carey Williamson and Philipp Woelfel.
A Constant Factor Approximation Algorithm for the Multicommodity Rent-or-Buy Problem Amit Kumar Anupam Gupta Tim Roughgarden Bell Labs CMU Cornell joint.
Mixed Criteria Packet Scheduling Chad R. Meiners Eric Torng.
On-line adaptive parallel prefix computation Jean-Louis Roch, Daouda Traoré and Julien Bernard Presented by Andreas Söderström, ITN.
1 Scheduling Jobs with Varying Parallelizability Ravishankar Krishnaswamy Carnegie Mellon University.
Recap Priorities task-level static job-level static dynamic Migration task-level fixed job-level fixed migratory Baker/ Oh (RTS98) Pfair scheduling This.
A General Approach to Online Network Optimization Problems Seffi Naor Computer Science Dept. Technion Haifa, Israel Joint work: Noga Alon, Yossi Azar,
A Model for Minimizing Active Processor Time Jessica Chang Joint work with Hal Gabow and Samir Khuller.
Minimizing Flow Time on Multiple Machines Nikhil Bansal IBM Research, T.J. Watson.
Online Function Tracking with Generalized Penalties Marcin Bieńkowski Institute of Computer Science, University of Wrocław, Poland Stefan Schmid Deutsche.
Energy, Energy, Energy  Worldwide efforts to reduce energy consumption  People can conserve. Large percentage savings possible, but each individual has.
1/24 Algorithms for Generalized Caching Nikhil Bansal IBM Research Niv Buchbinder Open Univ. Israel Seffi Naor Technion.
Approximation Algorithms for Stochastic Combinatorial Optimization Part I: Multistage problems Anupam Gupta Carnegie Mellon University.
A Truthful Mechanism for Offline Ad Slot Scheduling Jon Feldman S. Muthukrishnan Eddie Nikolova Martin P á l.
XI HE Computing and Information Science Rochester Institute of Technology Rochester, NY USA Rochester Institute of Technology Service.
Yossi Azar Tel Aviv University Joint work with Ilan Cohen Serving in the Dark 1.
Speed Scaling to Manage Energy and Temperature Nikhil Bansal (IBM Research) Tracy Kimbrel (IBM) and Kirk Pruhs (Univ. of Pittsburgh)
1 Pruhs, Woeginger, Uthaisombut 2004  Qos Objective: Minimize total flow time  Flow time f i of a job i is completion time C i – r i  Power Objective:
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 12: February 13, 2002 Scheduling Heuristics and Approximation.
1 Server Scheduling in the L p norm Nikhil Bansal (CMU) Kirk Pruhs (Univ. of Pittsburgh)
Scheduling policies for real- time embedded systems.
Chapter 8 PD-Method and Local Ratio (4) Local ratio This ppt is editored from a ppt of Reuven Bar-Yehuda. Reuven Bar-Yehuda.
A Maiden Analysis of Longest Wait First Jeff Edmonds York University Kirk Pruhs University of Pittsburgh.
Competitive Queue Policies for Differentiated Services Seminar in Packet Networks1 Competitive Queue Policies for Differentiated Services William.
1 Operation Scheduling- II The Multi-Machine Case Look! There are two machines.
How the Experts Algorithm Can Help Solve LPs Online Marco Molinaro TU Delft Anupam Gupta Carnegie Mellon University.
Operational Research & ManagementOperations Scheduling Economic Lot Scheduling 1.Summary Machine Scheduling 2.ELSP (one item, multiple items) 3.Arbitrary.
XI HE Computing and Information Science Rochester Institute of Technology Rochester, NY USA Rochester Institute of Technology Service.
Xi He Golisano College of Computing and Information Sciences Rochester Institute of Technology Rochester, NY THERMAL-AWARE RESOURCE.
Workload Clustering for Increasing Energy Savings on Embedded MPSoCs S. H. K. Narayanan, O. Ozturk, M. Kandemir, M. Karakoy.
Multicast Pull Scheduling Kirk Pruhs. The Big Problem Movie Distribution Database Replication via Internet Harry Potter Book Download Software Download.
1 Approximation Algorithms for Generalized Min-Sum Set Cover Ravishankar Krishnaswamy Carnegie Mellon University joint work with Nikhil Bansal and Anupam.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Energy-aware QoS packet scheduling.
1 Approximation Algorithms for Generalized Scheduling Problems Ravishankar Krishnaswamy Carnegie Mellon University joint work with Nikhil Bansal, Anupam.
Concurrency and Performance Based on slides by Henri Casanova.
Determining Optimal Processor Speeds for Periodic Real-Time Tasks with Different Power Characteristics H. Aydın, R. Melhem, D. Mossé, P.M. Alvarez University.
Scheduling Parallel DAG Jobs to Minimize the Average Flow Time K. Agrawal, J. Li, K. Lu, B. Moseley.
1 Potential for Parallel Computation Chapter 2 – Part 2 Jordan & Alaghband.
CPU Scheduling Scheduling processes (or kernel-level threads) onto the cpu is one of the most important OS functions. The cpu is an expensive resource.
Competitive Algorithms from Competitive Equilibria
Copyright ©: Nahrstedt, Angrave, Abdelzaher
CHAPTER 8 Operations Scheduling
Packing Jobs onto Machines in Datacenters
On Scheduling in Map-Reduce and Flow-Shops
The Price of information in combinatorial optimization
Dynamic and Online Algorithms for Set Cover
Sanjoy Baruah The University of North Carolina at Chapel Hill
CSCI1600: Embedded and Real Time Software
New Scheduling Algorithms: Improving Fairness and Quality of Service
University of Pittsburgh
University of Pittsburgh
György Dósa – M. Grazia Speranza – Zsolt Tuza:
Non-clairvoyant Precedence Constrained Scheduling
Presentation transcript:

1 Scheduling on Heterogeneous Machines: Minimize Total Energy + Flowtime Ravishankar Krishnaswamy Carnegie Mellon University Joint work with Anupam Gupta and Kirk Pruhs CMU U. Pitt.

The Fact of Life The future of computing sees many cores And not all of them are identical! – Different types of processors are tuned with different needs in mind – Some are high power consuming, fast processors – Others are lower power, slower processors (but more power-efficient) 2 How do we utilize these resources best? Design good scheduling algorithms for multi-core

The Problem we Study 3 Scheduling on Related Machines Scheduling with Power Management

Scheduling on Related Machines We have a set of m machines, and n jobs arrive online Machine i has a speed s i Schedule jobs on machines to minimize average flow-time Garg and Kumar [ICALP 2006] O(log 2 P)-approximation algorithm – Anand, Garg, Kumar 2010: O(log P)-approximation algorithm Chadha et al [STOC 2009] (1+ ∈ )-speed O(1/ ∈ )-competitive online algorithm 4 Reality: Machines have different efficiencies! But how do we capture this?

Scheduling with Energy Constraints Minimize flow time subject to energy budgets Does not make much sense in an online setting – Jobs continually keep coming and going – Very strong lower bounds exist Screwed if we save on energy Screwed if we use up a lot of energy! Often employed modeling fix Minimize total flow time + total energy consumed 5

6 Energy/Flow Tradeoff [Albers Fujiwara 06] Job i has release date r i and processing time p i Optimize total flow + ρ * energy used (example: If the user is willing to spend 1 unit of energy for a 3 microsecond improvement in response, then ρ=3.) By scaling processing times, assume ρ=1 Factor ρ: amount of energy user is willing to spend to get a unit improvement in response

Problem Definition/ Model Collection of m machines, n jobs arrive online Each machine i has a different power function P i (s) 7 Power P(s) Speed s Machine i Schedule jobs and assign power setting to machines to minimize total flowtime + energy

Known Results The case of 1 machine is well understood Bansal et al. [BCP09] showed the following: 8 Weighted Flowtime (1+ ∈ )-speed O(1/ ∈ ) Unweighted FlowtimeO(1)-competitive Power FunctionArbitrary Scheduling AlgorithmHighest Density First Speed Scaling PolicyP -1 (W(t)) What about multiple machines? How do we assign machines to jobs upon arrival?

Our Results 9 Weighted/Unweighted (1+ ∈ )-speed O(1/ ∈ ) Power FunctionArbitrary, Different for Machines Scheduling AlgorithmHighest Density First Speed Scaling PolicyP i -1 (W i (t)) Assignment Policy“Do Least Harm”® Scalable online algorithm for minimizing flowtime + energy in heterogeneous setting Will Explain Soon Speed Augmentation is needed for multiple machines because of Ω(log P) lower-bounds for even identical parallel machines, and objective of minimizing sum of flow times

Analysis Contribution of any alive job at time t is w j Total rise of objective function at time t is W A (t) Would be done if we could show (for all t) [W A (t) + P A (t)] ≤ O(1) [W O (t) + P O (t)] 10 w j (C j – a j )

Amortized Competitiveness Analysis Sadly, we can’t show that, not even in the no-power setting There could be situations when |W A (t)| is 100 and |W O (t)| is 10 (better news: vice-versa too can happen.) Way around: Use some kind of global accounting. 11 When we’re way behind OPT When OPT pay lot more than us

Banking via a Potential Function Define a potential function Φ(t) which is 0 at t=0 and t= Show the following: – At any job arrival, Δ Φ ≤ α ΔOPT ( ΔOPT is the increase in future OPT cost due to arrival of job) – At all other times, 12 Will give us an ( α+β) -competitive online algorithm

Intuition behind our Potential Function There are n jobs, each weight 1 and processing time p j Estimate future cost incurred by algorithm HDF at speed P -1 (n) While first job is alive, at each time, we pay W A (t) + P A (t) = 2n (job 1 is alive for time p 1 / P -1 (n)) Next we pay W A (t) + P A (t) = 2(n-1) for time p 2 / P -1 (n-1) + 2(n-2) for time p 3 / P -1 (n-2) + 2(n-3) for time p 4 / P -1 (n-3) In Total, 13

An Alternate View 14 p1p1 p2p2 p3p

Going back to our Algorithm 15 Result (1+ ∈ )-speed O(1/ ∈ ) Power FunctionArbitrary, Different for Machines Scheduling AlgorithmHighest Density First Speed Scaling PolicyP i -1 (W i (t)) Assignment Policy“Do Least Harm”® For each machine, have estimate of future cost according to current queues. Send new job to machine which will minimize the increase in total future cost.

The Potential Function Potential Function Definition – Characterize the “lead” OPT might have 16

Analysis Bound jump in potential when a job arrives – Can be an issue when we assign it to machine 1 but OPT assigns it to machine 2 – We show that this increase is no more than the increase in OPT’s future cost because of job arrival – Summing over all such job arrivals, this can be at most the total cost of OPT. 17

Simple Case: Unit Size Jobs Increase due to Alg assigning job to Machine 1: Decrease due to Opt assigning job to Machine 2: 18 Net Change: Monotonicity of x/P -1 (x)Assignment Algorithm Inc. future cost of OPT x/P -1 (x) is concave

Banking via a Potential Function Define a potential function Φ(t) which is 0 at t=0 and t= Show the following: – At any job arrival, Δ Φ ≤ α ΔOPT ( ΔOPT is the increase in future OPT cost due to arrival of job) – At all other times, 19 Will give us an ( α+β) -competitive online algorithm

Running Condition On each machine, we can assume OPT runs BCP – HDF at a speed of P j -1 (W j o (t)) Our algorithm does the same – HDF at a speed of P j -1 (W j a (t)) Show that using the potential function we defined, – holds for each machine, and therefore holds in sum! – proof techniques use ideas for single machine [BCP09] 20

Banking via a Potential Function Define a potential function Φ(t) which is 0 at t=0 and t= Show the following: – At any job arrival, Δ Φ ≤ α ΔOPT ( ΔOPT is the increase in future OPT cost due to arrival of job) – At all other times, 21 Will give us an ( α+β) -competitive online algorithm (needs (1+ ∈ )-speed augmentation..)

In Conclusion Have given the first scalable scheduling algorithm for heterogeneous machines for “flow+energy” – An intuitive potential function, and analysis – Can be used for other scheduling problems? Open Question – What if we do not know job sizes (Non-Clairvoyance)? Thanks a lot! 22