online vector scheduling
play

Online Vector Scheduling Debmalya Panigrahi Duke University slides - PowerPoint PPT Presentation

Online Vector Scheduling Debmalya Panigrahi Duke University slides es Work done with: Maryam Shadloo Nat Kell Sungjin Im Janardhan Kulkarni (MSR UMN) (UC Merced) (Duke) (UC Merced) Online Load Balancing [Graham 66] Job: 8 1


  1. Online Vector Scheduling Debmalya Panigrahi Duke University slides es Work done with: Maryam Shadloo Nat Kell Sungjin Im Janardhan Kulkarni (MSR  UMN) (UC Merced) (Duke) (UC Merced)

  2. Online Load Balancing [Graham ’66] Job: 8 1 2 3 4 5 6 7 Load: 1.1 1.3 1.2 0.8 2 1.2 0.9 1.2 (processing time) Machine 1 Machine 2 Online Vector Scheduling 2 Machine m

  3. Online Load Balancing [Graham ’66] Job: 8 1 2 3 4 5 6 7 Load: 1.3 1.2 0.8 2 1.2 0.9 1.2 1.1 (processing time) Machine 1 Machine 2 Online Vector Scheduling 3 Machine m

  4. Online Load Balancing [Graham ’66] Job: 8 1 2 3 4 5 6 7 Load: 0.8 2 1.2 0.9 1.2 1.1 + 1.2 = 2.3 (processing time) Machine 1 (load of a machine is the sum of its job loads) 1.3 Machine 2 Online Vector Scheduling 4 Machine m

  5. Online Load Balancing [Graham ’66] Job: 8 1 2 3 4 5 6 7 Load: 0.8 2 1.2 0.9 1.2 Online problem: cannot see future jobs. 1.1 + 1.2 = 2.3 (processing time) Machine 1 (load of a machine is the sum of its job loads) 1.3 Machine 2 Online Vector Scheduling 5 Machine m

  6. Online Load Balancing [Graham ’66] Job: 8 1 2 3 4 5 6 7 Load: Machine 1 Objective: minimize the makespan of the schedule (maximum load) Machine 2 Algorithm performance benchmark: Competitive ratio Online Vector Scheduling 6 Machine m

  7. Online Load Balancing [Variants] Job: 8 1 2 3 4 5 6 7 Load: Machine 1 Objectives: minimize the p-norm of the machine loads (makespan is the ∞ -norm) Machine 2 [CW ’75, CC ’76, AAGKKV ’95, AAS ’01, C ’08, CFKKM ’11] Machine models: - Identical machines (load = p j ) [G ’66, FKT ’89, BKR ’94, BFKV ’95, KPT ’96, A ’99, FW ’00, GRTW ’00, R ’01, AAS ’01] - Related machines (load = p j / s i ) [AAFPW ’97, BCK ’00] - Unrelated machines (load = p ij ) [CW ’75, CC ’76, AAGKKV ’95, AAFPW ’97, C ’08, ANR ’95, CFKKM ’11] Online Vector Scheduling 7 Machine m

  8. How do we load balance simultaneously on multiple resources (e.g., in data centers)? Online Vector Scheduling 8

  9. Online Vector Scheduling 2 3 4 1 Jobs: (2, 1.5, 1) (1, 1.5, 1.3) (1, .8, .9) (2, 2.8, 1.3) Machine 1 Machine 2 Online Vector Scheduling 9 Machine m (processor) Dimension 2 (storage) Dimension 3 (network) Dimension 1

  10. Online Vector Scheduling 2 3 4 1 Jobs: (2, 1.5, 1) (1, 1.5, 1.3) (1, .8, .9) 2 2.8 1.3 Machine 1 Machine 2 Online Vector Scheduling 10 Machine m (processor) Dimension 2 (storage) Dimension 3 (network) Dimension 1

  11. Online Vector Scheduling 2 3 4 Jobs: (1, .8, .9) 2+1 = 3 1.3 + .9 = 2.2 2.8 + 1.5 = 4.3 (loads accumulate Machine 1 in each dimension) 1 2 1.5 Machine 2 Online Vector Scheduling 11 Machine m (processor) Dimension 2 (storage) Dimension 3 (network) Dimension 1

  12. Online Vector Scheduling makespan: maximum over makespan in individual dimensions Jobs: Machine 1 Machine 2 Online Vector Scheduling 12 Machine m Dimension 2 Dimension 3 Dimension 1

  13. Online Vector Scheduling p-norms: maximum over p-norms in individual dimensions Jobs: Machine 1 Machine 2 Online Vector Scheduling 13 Machine m Dimension 2 Dimension 3 Dimension 1

  14. Summary of Results Makespan p-norm minimization minimization Identical machines O(log d) [Azar et al ’13, Our result: Meyerson et al ’14] Θ( (log d/log log d) 1-1/p ) Our result: Θ (log d/log log d) (Im-Kulkarni-Kell-P. Unrelated machines O(log d + log m) [Meyerson et al ’14] FOCS ’15) (machine dependent Our result: Our result: loads) Θ (log d + p) Θ (log d + log m) Related machines Later… Later… (Im-Kell-P.-Shadloo (non-uniform ’17) machine speeds) Online Vector Scheduling 14

  15. Summary of Results Makespan p-norm minimization minimization Identical machines O(log d) [Azar et al ’13, Our result: Meyerson et al ’14] Θ( (log d/log log d) 1-1/p ) Our result: Θ (log d/log log d) (Im-Kulkarni-Kell-P. Unrelated machines O(log d + log m) [Meyerson et al ’14] FOCS ’15) (machine dependent Our result: Our result: loads) Θ (log d + p) Θ (log d + log m) Related machines Later… Later… (Im-Kell-P.-Shadloo (non-uniform ’17) machine speeds) Online Vector Scheduling 15

  16. Identical machines algorithm: First attempt Greedy assignment (minimize maximum load across all machines and dimensions) unbalanced loads on dimensions …can be as bad as poly(d) -competitive Online Vector Scheduling 16

  17. Identical machines algorithm: First attempt Greedy assignment Random Assignment (minimize maximum load (assignment uniformly at random) across all machines and dimensions) Chernoff bounds: unbalanced loads on dimensions O(log(dm))-competitive …can be as bad as poly(d) -competitive (optimal for unrelated machines) Online Vector Scheduling 17

  18. Algorithm: Random and Greedy Assign uniformly at random Online Vector Scheduling 18

  19. Algorithm: Random and Greedy Assign uniformly at random log d/ log log d log d/ log log d log d/ log log d Online Vector Scheduling 19

  20. Algorithm: Random and Greedy Assign uniformly at random log d/ log log d log d/ log log d log d/ log log d Online Vector Scheduling 20

  21. Algorithm: Random and Greedy Exceeds threshold Assign uniformly at random log d/ log log d log d/ log log d log d/ log log d Online Vector Scheduling 21

  22. Algorithm: Random and Greedy Assign uniformly at random log d/ log log d log d/ log log d log d/ log log d Greedy schedule (minimize max over all machines and dimensions) Online Vector Scheduling 22

  23. Algorithm: Random and Greedy Assign uniformly at random log d/ log log d log d/ log log d log d/ log log d E[greedy volume] < volume/poly(d) (Chernoff bounds) Greedy schedule E[greedy makespan] = O(1) (minimize max over all machines and dimensions) Online Vector Scheduling 23

  24. Algorithm: Random and Greedy Competitive ratio: O(log d/log log d) Best we can do? Turns out yes: implies Ω (log d/log log d) lower bound Coloring lower bound For vector scheduling Online Vector Scheduling 24

  25. Online Monochromatic Clique Clique: Given fixed of t colors: red, blue, and green. (here t = 3) Objective: minimize the largest monochromatic clique. 2 5 1 4 6 7 3 i th vertex arrives: online algorithm gets adjacencies with vertices 1, …, i -1 Online Vector Scheduling 25

  26. Online Monochromatic Clique Clique: Given fixed of t colors: red, blue, and green. (here t = 3) Objective: minimize the largest monochromatic clique. 2 5 1 4 6 7 3 i th vertex arrives: online algorithm gets adjacencies with vertices 1, …, i -1 Online Vector Scheduling 26

  27. Online Monochromatic Clique Clique: Given fixed of t colors: red, blue, and green. (here t = 3) Objective: minimize the largest monochromatic clique. 2 5 1 4 6 7 3 i th vertex arrives: online algorithm gets adjacencies with vertices 1, …, i -1 Online Vector Scheduling 27

  28. Online Monochromatic Clique Clique: Given fixed of t colors: red, blue, and green. (here t = 3) Objective: minimize the largest monochromatic clique. 2 5 1 4 6 7 3 i th vertex arrives: online algorithm gets adjacencies with vertices 1, …, i -1 Online Vector Scheduling 28

  29. Online Monochromatic Clique Clique: Given fixed of t colors: red, blue, and green. (here t = 3) Objective: minimize the largest monochromatic clique. 2 5 1 4 6 7 3 i th vertex arrives: online algorithm gets adjacencies with vertices 1, …, i -1 Online Vector Scheduling 29

  30. Online Monochromatic Clique Clique: Given fixed of t colors: red, blue, and green. (here t = 3) Objective: minimize the largest monochromatic clique. 2 5 1 4 6 7 3 i th vertex arrives: online algorithm gets adjacencies with vertices 1, …, i -1 Online Vector Scheduling 30

  31. Online Monochromatic Clique Clique: Given fixed of t colors: red, blue, and green. (here t = 3) Objective: minimize the largest monochromatic clique. 2 5 1 4 6 7 3 i th vertex arrives: online algorithm gets adjacencies with vertices 1, …, i -1 Online Vector Scheduling 31

  32. Online Monochromatic Clique Clique: Given fixed of t colors: red, blue, and green. (here t = 3) Objective: minimize the largest monochromatic clique. Good Bad i th vertex arrives: online algorithm gets adjacencies with vertices 1, …, i -1 Online Vector Scheduling 32

  33. The Game : Bins versus Colors (…or robots versus blue devils) Number of colors: t = 4 Online Algorithm Adversary (us) 3 My turn! Bin 1 Bin 2 1. Adversary defines adjacencies with prior vertices. 1 2. Algorithm places vertex in a bin (ALGO’s color). 3. Adversary colors the vertex (OPT’s decision) Bin 3 Bin 4 2 Bins = algorithm’s coloring Online Vector Scheduling 33

  34. The Game : Bins versus Colors (…or robots versus blue devils) Number of colors: t = 4 Online Algorithm Adversary (us) 3 My turn! Bin 1 Bin 2 1. Adversary defines adjacencies with prior vertices. 1 2. Algorithm places vertex in a bin (ALGO’s color). 3. Adversary colors the vertex (OPT’s decision) Bin 3 Bin 4 2 Bins = algorithm’s coloring Online Vector Scheduling 34

Recommend


More recommend