Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Model for Minimizing Active Processor Time Jessica Chang Joint work with Hal Gabow and Samir Khuller.

Similar presentations


Presentation on theme: "A Model for Minimizing Active Processor Time Jessica Chang Joint work with Hal Gabow and Samir Khuller."— Presentation transcript:

1 A Model for Minimizing Active Processor Time Jessica Chang Joint work with Hal Gabow and Samir Khuller

2 Simple Batch Scheduling Problem B=3 n=9

3 Simple Batch Scheduling Problem B=3 n=9 FOUR ACTIVE SLOTS

4 Of Ovens and Trucks ? B=2

5 “Potential benefits include increased data center capacity and reduced capital expenditures as well as reduced power and cooling costs with power-aware job scheduling … However, current batch job scheduling algorithms and configurations are tuned only to optimize performance; energy efficiency has been ignored.” - Intel TR, 20 1 0

6 Simple Batch Scheduling Problem B=3 n=9

7 View Through Flows J T B=2 1 1 1 1 1 2 2 2 2 2

8 View Through Flows J T B=2 2 2 2 2 2 Goal: pick the smallest subset of T that can support n units of flow 1 1 1 1 1

9 Batching Algorithms

10 Lazy Activation

11 B=3

12 Lazy Activation

13 Example of Step II B=3 n=9

14 Example of Step II B=3 n=9

15 Example of Step II B=3 n=9

16 Example of Step II B=3 n=9 ACTIVE TIME: 3

17 Optimality of Lazy Activation 1.Modifying deadlines in Step I does not change optimal active time 2.After Step I, OPT w.l.o.g. opens only deadlines 3.At the first deadline, w.l.o.g. OPT satisfies the same set of jobs that Lazy Activation does

18 Lazy Activation Maximizes Throughput On infeasible instances, Step I preserves the maximum number of jobs B=3

19 A more general model Each job may have a non-unit (integral) processing requirement, but preemption at integral points is allowed Each job can be done in a subset of time slots (not necessarily one interval)

20 Our Results An O(n logn) algorithm for one window with unit jobs (any B). Polynomial DP solution for one window with unit jobs with arbitrary release times and deadlines, when time is not slotted (any B). Pre-emptive version for non-unit jobs is NP-hard if we cannot change the processor that runs the job. Problem with unit jobs is NP-hard for B ≥3. Polynomial solution for B=2 and unit jobs. Extends for non-unit processing time (with pre-emption) and a given budget for number of active time slots if instance is schedulable, o.w NP-hard. Consider pre-emptive scheduling when a slot is partially active, and develop a fast combinatorial algorithm. Prove an relationship between optimal pre-emptive and non-preemptive schedules for B=2. This ratio is at least ¾. SINGLE WINDOW MULTIPLE WINDOWS

21 Main Results SINGLE WINDOW MULTIPLE WINDOWS Lazy Activation

22 Handling Jobs with Multiple Windows 1 1 1 1 1 B B B B B J T

23 Polynomial Alg. for B=2 J T d(v) ≤ 1 d(v) ≤ 2 d(v) ≤ 1 d(v) ≤ 2

24 Polynomial Alg. for B=2 J T d(v) ≤ 1 d(v) ≤ 2 d(v) ≤ 1 d(v) ≤ 2 inactive slot MAX DEGREE SUBGRAPH: Given a graph G=(V,E) and upper bound on degree constraints, find a max cardinality subgraph satisfying degree constraints. –Reducible to finding max matchings

25 Need to be a bit careful! J T d(v) ≤ 1 d(v) ≤ 2 d(v) ≤ 1 d(v) ≤ 2 MAX DEGREE SUBGRAPH: Given a graph G=(V,E) and upper bound on degree constraints, find a max cardinality subgraph satisfying degree constraints. –Reducible to finding max matchings unscheduled

26 Need to be a bit careful! J T

27 J T FIX: –Find a standard max matching M on (J,T) sans loops d(v) ≤ 1 d(v) ≤ 2 d(v) ≤ 1 d(v) ≤ 2

28 Need to be a bit careful! J T d(v) ≤ 1 d(v) ≤ 2 d(v) ≤ 1 d(v) ≤ 2 FIX: –Find a standard max matching M on (J,T) sans loops –Augment M to a max DCS including loops –Matched nodes remain matched

29 Polynomial Alg. for B=2 J T d(v) ≤ 1 d(v) ≤ 2 d(v) ≤ 1 d(v) ≤ 2 |max DCS| = |J|+ # self-loops

30 Extension to Non-Unit Case If feasible, can still find preemptive schedule If not feasible, satisfying the largest number of jobs is NP-hard Extension: given a fixed budget on activation time, maximize number of jobs satisfied.

31 Unrestricted Preemption (B=2) Time slots may be partially active J T

32 Unrestricted Preemption (B=2) Time slots may be partially active J T 2-matching: s.t.

33 Unrestricted Preemption (B=2) Time slots may be partially active J T 2-matching: s.t. 1 /2 1 1 1

34 Unrestricted Preemption (B=2) Time slots may be partially active J T 1 /2 1 1 1

35 Unrestricted Preemption (B=2) Time slots may be partially active J T

36 Unrestricted Preemption (B=2) Time slots may be partially active Can reduce 2 slots to 1.5 active slots B=2

37 Unrestricted Preemption (B=2) Time slots may be partially active Can reduce 2 slots to 1.5 active slots Theorem: int-pmtv OPT ≤ 4/3 unres-pmtv OPT J T

38 Related Work DP improvement [Khuller, Koehler, ‘ 1 2] Batch scheduling to minimize makespan; max tardiness [Ikura, Gimple, ‘86] –improvement [Condotta, Knust, Shakhlevich, ‘ 1 0] –does not minimize number of batches Minimizing busy time [Khandekar, Schieber, Shachnai, Tamir, ‘ 1 0] –infinite batch resources –jobs of arbitrary length –5-approximation Minimizing gaps [Baptiste, ‘06; Baptiste, Chrobak, Dürr, ‘07]

39 Future Work Polynomial time algorithms for jobs of non-unit length and arbitrary B Online versions Improved algorithms for minimizing busy time

40 Thanks. Questions?


Download ppt "A Model for Minimizing Active Processor Time Jessica Chang Joint work with Hal Gabow and Samir Khuller."

Similar presentations


Ads by Google