Download presentation
Presentation is loading. Please wait.
Published byEugene Holmes Modified over 9 years ago
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?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.