multidimensional scheduling polytope scheduling problem
play

Multidimensional Scheduling (Polytope Scheduling Problem) - PowerPoint PPT Presentation

Multidimensional Scheduling (Polytope Scheduling Problem) Competitive Algorithms from Competitive Equilibria Sungjin Im University of California, Merced (UC Merced) Janardhan Kulkarni (MSR) Kamesh Munagala (Duke) Competitive Algorithms from


  1. Multidimensional Scheduling (Polytope Scheduling Problem) Competitive Algorithms from Competitive Equilibria Sungjin Im University of California, Merced (UC Merced) Janardhan Kulkarni (MSR) Kamesh Munagala (Duke)

  2. Competitive Algorithms from Competitive Equilibria

  3. Competitive for Datacenter Online Scheduling Algorithms from Competitive Equilibria

  4. Speed Competitive for Datacenter Online Scheduling Algorithms Competitive Equilibria

  5. Speed Competitive for Datacenter Online Scheduling Algorithms Fairness Competitive in Economics Equilibria

  6. Speed Competitive for Datacenter Online Scheduling Algorithms Fairness Competitive in Economics Equilibria

  7. Outline — Multidimensional Scheduling (Polytope Scheduling Problem) — System Desiderata — Fairness — Job latency: total completion time and total flow/response time — Our Results — Conclusions

  8. Multidimensional Scheduling — System has many resources — CPU, memory, disk, network, … — Each available in limited supply — Each user runs a job with a certain resource requirement — At each time instant: — Allocate resources among the users — Rate of processing = Function of resources allocated — Utility of job = Rate of processing

  9. An Example Gh Ghodsi, , Za Zaharia ia, , Hi Hindm dman, , Ko Kondwinski, , Sh Shenker, , St Stoic oica. N . NSDI I 20 2012 12 — Two (divisible) resources — 9 CPUs; 18GB RAM — Denote this as Supply vector, S = (9,18) — User 1 runs a job that needs r 1 = (1,4) and size 6 — Needs resources x 1 r 1 to get processing rate x 1 — User 2 runs a job that needs r 2 = (3,1) and size 6 — If User 1 gets rate x 1 and User 2 gets rate x 2 then: — x 1 + 3 x 2 ≤ 9 — 4 x 1 + x 2 ≤ 18

  10. For simplicity… — Normalize supply to equalize all dimensions — Supply = (9,18) — Normalized Supply S = (18,18) — User 1 runs a job that needs r 1 = (2 , 4) and size 6 — User 2 runs a job that needs r 2 = (6, 1) and size 6 — If User 1 gets rate x 1 and User 2 gets rate x 2 then: — 2 x 1 + 6 x 2 ≤ 18 — 4 x 1 + x 2 ≤ 18 — If x 1 =3 and x 2 = 2, then the two jobs complete in 6/3 and 6/2 time steps, respectively.

  11. Multidimensional Scheduling — n jobs — D dimensions/resources (1, 1, 1, …, 1) — Each job j has — demand vector (r j1 , r j2 , r j3 , …, r jD ) — size/processing requirement p j — Arrives at time a j online — Feasible Schedule at time t — Σ j r jd x j (t) ≤ 1 for all d = 1, 2, …, D, — Then, each job j gets processed at a rate of x j (t) at time t

  12. Extension to Polytope Constraints — n jobs in system — Each job j needs to be assigned a processing rate x j (t) — Set { x j (t)} needs to lie within some feasibility polytope P — Typically, P is a packing (downward-closed) polytope — Encodes many well-studied scheduling problems: — Rate is arbitrary concave function of resource allocation [Edmonds, Pruhs ’02; Zahedi, Lee ‘13] — — Unrelated machine scheduling [Chadha, Garg, Kumar, Muralidhara ‘09] — Broadcast scheduling, switch scheduling, …

  13. Desiderata 1: Fair Allocations — The system is shared by many clients. Fairness really matters. — In the single resource/dimensional case, Max-Min Fairness is widely accepted. Max-Min Fairness: 1 water-filling 1 1/6 2/3

  14. Desiderata 1: Fair Allocations — The system is shared by many clients. Fairness really matters. — In the single resource/dimensional case, Max-Min Fairness is widely accepted Max-Min Fairness: 1 water-filling 1 1/6 2/3

  15. Desiderata 1: Fair Allocations — The system is shared by many clients. Fairness really matters. — In the single resource/dimensional case, Max-Min Fairness is widely accepted Max-Min Fairness: 1 water-filling 1 1/6 2/3

  16. Desiderata 1: Fair Allocations [Ghodsi et al. NSDI 2012] — The notion of fairness is not clear in the multidimensional setting — Pareto-optimality (PO) — Cannot improve everyone’s rate simultaneously — Envy-freeness (EF) — Users should not envy the share of other users — Truthfulness (IC) — Users should not misreport resource requirement — Sharing Incentive (SI) — Users should not be happier with 1/n share of all resources

  17. Two Examples of Fair Allocations — Dominant Resource Fairness [Ghodsi et al. NSDI 2012] — Proportional Fairness [Nash 1950; Kelly et al. 1998] — There are many other allocations that generalize max-min fairness

  18. Dominant Resource Fairness (DRF) CPU Memory — Recall r 1 = (2, 4) and r 2 = (6, 1) — S = (18,18) for CPU and RAM — Dominant resource: — RAM for User 1 and CPU for User 2 — Equalize dominant shares: 4 x 1 = 6 x 2 — Yields x 1 = 3 and x 2 = 2

  19. Proportional Fairness (PF or CEEI) X — Maximize under the resource constraints log x j j — Each job has $1 money — If resource i is priced at p i then job j will maximize x j by solving: Price paid = x j × p · r j = $1 — Find prices for resources to clear the market — Recall r 1 = (2, 4) and r 2 = (6, 1) — S = (18,18) for CPU and RAM — Set x 1 = 4.09 and x 2 = 1.64

  20. Fairness: DRF vs PF — DRF is EF, SI, IC, but not PO — A simple generalization achieves PO [Parkes, Proccacia, Shah, ‘12] — PF is PO, EF, SI but lacks IC — A simple modification achieves IC [Cole, Gnatzelis, Goel, ‘13] … and approximately satisfies PO

  21. Desiderata 2: Job Latency — Completion time C j of job j satisfies: Z C j x jt ≥ p j t = a j Total rate allocated X — Completion time objective: w j C j Minimize j — Flow time (or Delay): X Minimize w j ( C j − a j ) j

  22. Competitive Ratio c –competitive Cost ( A online , I ) Cost ( OPT offline , I ) ≤ c max I For all inputs I

  23. Job Latency: DRF vs PF [I-Kulkarni-Munagala, STOC 14, FOCS 15, JACM 18] — DRF is Ω (D .5 ) competitive for total completion time — Even when all jobs arrive at time 0 — DRF does not distinguish between “heavy” and “light” jobs! … 1 2 3 4 D √ D jobs 1 job For all j a j = 0 1 job p j = 1 w j = 1 1 job Resources in unit supply

  24. DRF Allocation … 1 2 3 4 D √ √ x = 1 / D D jobs √ x = 1 / D 1 job √ x = 1 / D 1 job √ Completion Time of DRF = O ( D D ) OPT schedules singleton jobs in parallel in one step, Then the “heavy jobs” sequentially OPT = O ( D )

  25. What does PF do? … 1 2 3 4 D 1 ≈ 1 √ D jobs x = √ √ D D (1 + D ) √ 1 job D x = ≈ 1 √ D 1 + 1 job Completion Time of PF ≈ O ( D ) = OPT

  26. Our Main Results [I-Kulkarni-Munagala, STOC 14, FOCS 15, JACM 18] — PF is O(1) competitive for completion time! — Fair! — Non-clairvoyant! — Holds for any scheduling problem that can be modeled as: Allocate rates { x jt } s.t. { x jt } ∈ Packing polytope P - Packing polytope: Convex; if x is in P , and any y ≤ x is also in P .

  27. Our Main Results [I-Kulkarni-Munagala, STOC 14, FOCS 15, JACM 18] — PF is O(1) competitive for total flow time for any monotone PSP problem (with O(1)-speed augmentation) — Monotone PSP: All present jobs gets less processing rate under PF when more jobs are added — E.g. single source multi-commodity network routing, utilities modelling “substitutable” resources

  28. Conclusion & Open Question — Fairness could lead to low overall job latency — Our lower bound does not rule out O(1)-speed O(1)-competitive algorithms for general PSP when clairvoyance is allowed. — Can one can get O(1)-competitive algorithm for total flow time with (1+eps)-speed for monotone PSP? — What is the tight competitive ratio of DRF for total completion time? Is it O(D .5 ) or O(D)?

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend