Scheduling Parallel DAG Jobs to Minimize the Average Flow Time K. Agrawal, J. Li, K. Lu, B. Moseley.

Slides:



Advertisements
Similar presentations
Minimizing Average Flow-Time Naveen Garg IIT Delhi Joint work with Amit Kumar, Jivi Chadha,V Muralidhara, S. Anand.
Advertisements

CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 19: November 21, 2005 Scheduling Introduction.
Scheduling Criteria CPU utilization – keep the CPU as busy as possible (from 0% to 100%) Throughput – # of processes that complete their execution per.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 14: March 3, 2004 Scheduling Heuristics and Approximation.
S ELFISH M IGRATE : A Scalable Algorithm for Non-clairvoyantly Scheduling Heterogeneous Processors Janardhan Kulkarni, Duke University Sungjin Im (UC Merced.
Online Algorithms Amrinder Arora Permalink:
Scheduling with Outliers Ravishankar Krishnaswamy (Carnegie Mellon University) Joint work with Anupam Gupta, Amit Kumar and Danny Segev.
1 Better Scalable Algorithms for Broadcast Scheduling Ravishankar Krishnaswamy Carnegie Mellon University Joint work with Nikhil Bansal and Viswanath Nagarajan.
Chapter 5 CPU Scheduling. CPU Scheduling Topics: Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
Distributed Process Scheduling Summery Distributed Process Scheduling Summery BY:-Yonatan Negash.
11Sahalu JunaiduICS 573: High Performance Computing5.1 Analytical Modeling of Parallel Programs Sources of Overhead in Parallel Programs Performance Metrics.
Chapter 6: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 6: CPU Scheduling Basic.
Online Algorithms Motivation and Definitions Paging Problem Competitive Analysis Online Load Balancing.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
1 Scheduling on Heterogeneous Machines: Minimize Total Energy + Flowtime Ravishankar Krishnaswamy Carnegie Mellon University Joint work with Anupam Gupta.
1 Scheduling Jobs with Varying Parallelizability Ravishankar Krishnaswamy Carnegie Mellon University.
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.
Lecture 3 – Parallel Performance Theory - 1 Parallel Performance Theory - 1 Parallel Computing CIS 410/510 Department of Computer and Information Science.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00-6:00 PM.
Yossi Azar Tel Aviv University Joint work with Ilan Cohen Serving in the Dark 1.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
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)
Researchers: Preet Bola Mike Earnest Kevin Varela-O’Hara Han Zou Advisor: Walter Rusin Data Storage Networks.
A Maiden Analysis of Longest Wait First Jeff Edmonds York University Kirk Pruhs University of Pittsburgh.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria.
Chapter 5: Process Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Basic Concepts Maximum CPU utilization can be obtained.
1 11/29/2015 Chapter 6: CPU Scheduling l Basic Concepts l Scheduling Criteria l Scheduling Algorithms l Multiple-Processor Scheduling l Real-Time Scheduling.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 5 CPU Scheduling Slide 1 Chapter 5 CPU Scheduling.
6.1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Static Process Scheduling
Lecture Topics: 11/15 CPU scheduling: –Scheduling goals and algorithms.
Multicast Pull Scheduling Kirk Pruhs. The Big Problem Movie Distribution Database Replication via Internet Harry Potter Book Download Software Download.
Ben Moseley Sungjin Im Goals of Talk  Make you aware of/interested in broadcast sched  Highlight known results, key open questions, some recent results.
1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
1 Uniprocessor Scheduling Chapter 3. 2 Alternating Sequence of CPU And I/O Bursts.
Chapter 4 CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Online Bipartite Matching with Augmentations Presentation by Henry Lin Joint work with Kamalika Chaudhuri, Costis Daskalakis, and Robert Kleinberg.
1 Module 5: Scheduling CPU Scheduling Scheduling Algorithms Reading: Chapter
Basic Concepts Maximum CPU utilization obtained with multiprogramming
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria.
Course Description Algorithms are: Recipes for solving problems.
Process Scheduling B.Ramamurthy 9/16/2018.
On Scheduling in Map-Reduce and Flow-Shops
CPU Scheduling.
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
CPU Scheduling G.Anuradha
Module 5: CPU Scheduling
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter5: CPU Scheduling
COT 4600 Operating Systems Spring 2011
New Scheduling Algorithms: Improving Fairness and Quality of Service
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
CGS 3763 Operating Systems Concepts Spring 2013
University of Pittsburgh
University of Pittsburgh
Shortest-Job-First (SJR) Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 6: CPU Scheduling
Non-clairvoyant Precedence Constrained Scheduling
Module 5: CPU Scheduling
Presentation transcript:

Scheduling Parallel DAG Jobs to Minimize the Average Flow Time K. Agrawal, J. Li, K. Lu, B. Moseley

2 Client-Server Scheduling Clients send jobs to the server Server processes jobs and provides service guarantees Jobs arrive over time – online Jobs can be preempted

3 Service Guarantees  Flow time – difference between arrival and completion of a job  Common objectives in online scheduling:  Average/Sum Flow Time  Maximum Flow Time  L k Norms of Flow Time ArrivalCompletion Time Job's Flow Time

4 Many Server Models Sequential Jobs Single machine Multiple machine Identical Machines Related Machines,... Parallelizable Jobs on Identical Machines Speed-up Curves model Directed Acyclic Graph (DAG) Model

5 Parallelism Models  Speed-Up Curves Jobs have total work W divided into phases Each phase has work Phases are processed sequentially Processing rate function Γ(m) Function of number of processors given Function is usually positive sub-linear Function can be different depending on the phase the job is currently in. A Job's Phases

6 Parallelism Models  Directed-Acyclic Graph (DAG) Model  Jobs have work which correspond to a DAG Each job is modeled as a DAG Job completed when last node of its DAG is completed  Processing rate depends on the number of nodes being worked on

7 Directed Acyclic Graph Model of Parallelism Nodes represent computation Arrows represent dependencies Important parameters – Critical path length – Total work

8 Parallelism Model Differences Results do not transfer directly between models Jobs are difficult to relate:

9 Notation n – number of jobs m – total number of machines W i – total work of job i C i – critical path length of job i W(t) – work remaining at time t

10 Resource Augmentation  Strong lower bounds exist  Speed augmentation [Kalyanasundaram, Pruhs 95]  Algorithm is given processors which are faster than the optimal scheduler  s-speed c-competitive algorithms Scalable algorithms are (1+ε) speed O(1) competitive for fixed ε>0

11 Common Scheduling Algorithms Round Robin Latest Arrival Processor Sharing (LAPS) Greedy Shortest Job First Shortest Remaining Processing Time

12 Previous Work  Online on Average Flow  Sequential Jobs  LAPS, SJF, SRPT, all scalable [Torng, McCullough; Edmonds, Pruhs]  Lower bound (without resource augmentation) of Ώ (min(log P,log(n/m)) [Leonardi, Raz]  Parallel Jobs  LAPS is scalable in the speed-up curves model [Edmonds, Pruhs]  DAG Model?

13 Online Study of Models  DAG model  Well-studied offline  Only studied recently online  Naturally captures programs generated by languages and libraries such as Cilk, Cilk Plus, Intel TBB, OpenMP.  Microsoft researching  Cyber-Physical-Systems (Real-Time) community excited (Outstanding paper award ECTRS 2013, Best-Student-Paper Award RTSS 2011)

14 Results  First results for average flow in DAG model  LAPS is (1+ε) speed O(1) competitive, for fixed ε>0 [this work]  Greedy (Shortest Work First) is (2+ε) speed O(1) competitive, for fixed ε>0 [this work]  Algorithms are online and oblivious to DAG structure  Both require knowledge of the ready nodes for each job

15 Algorithm Analysis Latest Arrival Processor Sharing (LAPS) Potential function analysis Shortest Work First (SWF) Potential Function analysis for fractional flow time Conversion form fractional to integral flow

16 Fractional Flow Technique Fractional flow Integral flow: Job costs 1 per unit time step Fractional flow: Job costs W A (t)/W per unit time step Alg_Int ← Alg_Frac ← Opt Conversion argument (at a high level): If fractional cost is large, charge integral to fractional After some some point, fractional cost is small Given more speed to the algorithm, this part is finished JobTailJobTail Speed

17 Fractional Flow Problem Problem with DAG jobs

18 Remarks about SWF Analysis New charging scheme (at a high level) *Assume the faster algorithm completes more total aggregate work Charge jobs integral flow that can be bounded fractional flow directly Other jobs only charge after they wait much longer than their fractional flow time in the slower schedule Otherwise if the fast SJF completes more work than the slower then there is a mapping between alive jobs fractional jobs in the slower schedule SWF with (1+ε) more speed can fall behind SWF

19 Fast SWF Falling Behind Fast SWF falls behind in total aggregate work Fast SWF may unlock the parallel portion of a short job earlier Slow SWF may pack the jobs better Examples in paper With (2+ε) speed the faster algorithm completes more aggregate work

20 Remarks Two models are different A greedy algorithm (SWF) works in the DAG model – Practical method to schedule DAG jobs – No known greedy algorithm in speed-up curves DAG structure gives new challenges – standard techniques do not extend

21 Open Questions Other metrics in the DAG model, Max Flow, etc. A scalable greedy algorithm?

22 Thank You! Questions?