1 / 30

Temperature-Aware Job Scheduling

Marek Chrobak Christoph Dürr Mathilde Hurand Julien Robert. University of California, Riverside CNRS, Ecole Polytechnique, Paris Ecole Polytechnique, Paris Ecole Normale Superieure, Lyon.

xanti
Download Presentation

Temperature-Aware Job Scheduling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Marek Chrobak Christoph Dürr Mathilde Hurand Julien Robert University of California, Riverside CNRS, Ecole Polytechnique, Paris Ecole Polytechnique, Paris Ecole Normale Superieure, Lyon Temperature-Aware Job Scheduling

  2. architecture-level Algorithms control physical attributes: speed, power level Techniques for Energy/Temperature Management • Speed/frequency scaling • Power-down strategies

  3. OS-level Scheduler architecture-level Hardware Dynamic Thermal Management (DTM) CPU General Philosophy

  4. Is P=NP? 2+2=? 1+2+..+2k=? T0 Conceptual View (Pentium 4)

  5. Is P=NP? 2+2=? 1+2+..+2k=? T0 Conceptual View

  6. Is P=NP? 1+2+..+2k=? T0 Conceptual View 2+2=? 2+2=?

  7. T0 Conceptual View Is P=NP? 1+2+..+2k=? Is P=NP?

  8. T0 Conceptual View 1+2+..+2k=? Is P=NP?

  9. T0 Conceptual View 1+2+..+2k=? Is P=NP?

  10. T0 Conceptual View 1+2+..+2k=? Is P=NP?

  11. T0 Conceptual View 1+2+..+2k=? 1+2+..+2k=?

  12. General Scenario • Sequence of unit-length jobs • Each job has heat contribution hj („temperature”) • Processor’s thermal threshold = T0 • If temperature exceeds T0, DTM reduces • frequency to one half (…. one quarter …) • We want to find a schedule that optimizes • performance

  13. (1/R) · T + C · dT/dt = P power temperature heating/cooling rate Thermal Model After discretization and normalization: Ti+1 = c (Ti+hj) for some c < 1

  14. 0 cx c(cx+y) 0 cy c(cy+x) 1 2 2 1 Can this Possibly Work*? Model: Ti+1 = c(Ti+hj) Take two jobs h1 = x < h2 = y But cx+y > cy+x Conclusion: hot-cold is better than cold-hot, as long as we do not violate the thermal threshold (that is, cy < T0) (*) Based on: „Dynamic thermal management through Task scheduling”, J.Yang, X.Zhou, M.Chrobak, Y.Zhang, L.Lin

  15. Can this Possibly Work*? Algorithm ThreshHot: Always schedule the hottest job that does not violate the threshold. If the threshold is exceeded, just run the hottest job…. (*) Based on: „Dynamic thermal management through Task scheduling”, J.Yang, X.Zhou, M.Chrobak, Y.Zhang, L.Lin

  16. Execution Trace (vs Base) Linux scheduler ThreshHot

  17. DTM Reduction

  18. Speedup

  19. Jobs: processing time (length) = 1 release time rj deadline dj heat contribution hj Thermal-Aware Scheduling Problem 1|rj,pj=1,hj|∑Uj : • Thermal model: • If current temp. = t and we execute j, then at the next step temp t’ = (t+hj)/2 • Temperature cannot exceed threshold T0 = 1 • Objective: compute a schedule that maximizes throughput (number of jobs that meet deadlines)

  20. 0.4 1 0.6 2 1.9 jobs 3 0.8 4 0.0 0.2 0.4 0.2 0.5 0.25 Schedule 1 1 2 -- 4 -- 0.0 0.2 0.1 1.0 0.8 0.8 Schedule 2 1 -- 3 2 4 Example: 0 1 2 3 4 5

  21. 2-2-x+1 j 1.0 -- -- -- -- -- -- 1/2 1/4 1/8 … 2-x+1 x-1 NP-Hardness (idea) 1.0 j How long do we need to wait before we can run j? So j’s „virtual length” = x Idea: Use some number-based partition problem mapping x job j with temperature2-2-x+1 bla bla bla …

  22. NP-Hardness Theorem: Thermal-aware scheduling for maximum throughput (1|rj,pj=1,hj|∑Uj) is strongly NP-hard … …even if all release times are equal and all deadlines are equal

  23. Online Algorithms: • Jobs arrive at their release times • Information about job j (dj, hj) is revealed • at time rj • An online algorithm A is R-competitive if • for each instance • optimal throughput ≤ R · throughput of A Theorem: There is a 2-competitive algorithm, and no better ratio is possible

  24. 0 1 2 3 1.2 1.2 1.2 1 1 1 0.0 0 1 2 3 0 1 2 3 1.6 1.6 3 2 0.0 0.6 1 0.6 0.0 0.0 1 --- --- 0.0 0.6 0.3 0.95 --- --- 0.0 0.0 0.8 1.0 1 --- 3 --- 2 1 Lower Bound of 2:

  25. 1.9 not admissible 6 1.4 7 0.9 8 dominated by 8 1.2 5 0.6 4 0.5 Online Algorithm: At each step pick any admissible job such that any other admissible job is either warmer or less urgent Example: Theorem: This algorithm is 2-competitive

  26. (I) (II) (III) j pending j pending k q? -- j CF j Adv j j Proof for CoolestFirst (run the coolest job) Idea: Charge jobs in the adversary schedule to jobs in CoolestFirst such that each job of CoolestFirst gets at most 2 charges (  2-competitiveness ) Charging scheme:

  27. (III) j pending -- › j CF Adv Proof for CoolestFirst (run the coolest job) Here, CF’s temperature is at mos 1/2 j must be hotter than 1 (hj > 1) Here, CF must be warmer than Adv ≤ Here, CF is cooler than Adv Here, Adv’s temperature is at least 1/2

  28. (I) (II) (III) j pending j pending k q -- › ≤ p j CF j Adv j j Proof for CoolestFirst (run the coolest job) Idea: Charge jobs in the adversary schedule to jobs in CoolestFirst such that each job of CoolestFirst gets at most two charges. Charging scheme: nearest„relative heating” step, hq > hp (unique for j)

  29. CF k (II) (I) Adv j k Proof for CoolestFirst (run the coolest job) Claim: Each job k of CoolestFirst gest ≤ 2 charges 1. k gets at most one charge of each type 2. Suppose k gets charges of type (I) and (II): • Then j is pending • so CF chooses k over j • so hk < hj • so this is not a relative heating step and k gets no charge (III)

  30. Further Research / Open Problems • Randomized algorithms: Can we get a ratio < 2 • Better thermal models: • t’ = c(t+hj) for 0 < c < 1 (our stuff works for c < 1/2) • Frequency scaling • Other objective functions • makespan • average completion time • More processors

More Related