Download presentation
Presentation is loading. Please wait.
Published byAlexander Osborne Modified over 9 years ago
2
Ben Moseley Sungjin Im
3
Goals of Talk Make you aware of/interested in broadcast sched Highlight known results, key open questions, some recent results in online case Interesting algorithmic idea(s) that could be of general interest Impressionistic proofs
4
Pull-based Broadcast 4 Clients Server
5
Motivation Wireless and multicast where broadcast is natural (several applications) Batched scheduling (batch size infinity/large) (models studied in queuing theory) Other models: push vs pull, stochastic vs worst-case [Bartal-Muthukrishnan’00] [Kalyanasundaram-Pruhs- Velaithupillai’00] initiated work on worst-case online and offline algorithmic analysis in pull-based model Sustained interest due to simplicity and algorithmic interest/difficulty
6
Formal Model Server has n pages of information Each clients request a specific page When server broadcasts a page p, all outstanding requests for page p are simultaneously satisfied Uniform page sizes: all pages have same size (1 wlog) Non-uniform page sizes: ignored for most of talk
7
Formal Model contd Requests arrive at beginning of slot Transmission of page takes one time slot J p,i : i th request of page p a p,i : arrival time f p,i : finish time in some schedule F p,i = f p,i - a p,i : flowtime/response time/waiting time p p p,1p,2p,3 p,4 p,5
8
Unicast Scheduling, unit sized jobs To contrast with broadcast scheduling Unicast job scheduling: all jobs unit-sized J i : job i a i : arrival time, assume integer f i : finish time in some schedule w i : non-negative weight
9
What to optimize? Flowtime F p,i : f p,i – a p,i Standard metrics: minimize average/total flowtime : Σ p,i F p,i minimize maximum flowtime: max p,i F p,i minimize L k norms of flowtime : ( Σ p,i (F p,i ) k ) 1/k weighted versions Maximize throughput (requests have deadlines) New metric(s): delay factor
10
Worst-case Framework & Resource Augmentation Input is worst-case (adversarial) Offline: exact poly-time algo or approximation ratio Online: competitive ratio Resource augmentation [Kalyanasundaram-Pruhs] Algorithm given s-speed server while adversary given 1-speed server for some s ≥ 1
11
What is known? Offline results for average flowtime O(1)-speed O(1) approx [Kalyanasundaram-Pruhs- Velauthapillai’00] NP-Hard [Erlebach-Hall’02], simpler proof [Chang- Erlebach-Gailis-Khuller’08] (1+ ε )-speed O(1/ ε ) approx for any ε > 0 [Bansal-Charikar- Khanna-Naor’05], also O(n 1/2 ) approx O(log 2 n/log log n) approx [Bansal-Coppersmith-Svir’06] All approx algorithms based on LP relaxation
12
What is known? Online for average flowtime Ω (n) lower bound for any algorithm [K-P-V’00] “Reduction” to non-clairvoyant parallel scheduling problem [Edmonds-Pruhs’02]. Via reduction BEQUI-EDF is (4+ ε )-speed O(1)-competitive [EP’02] LAPS is (2+ ε )-speed O(1)-competitive [EP’09] Longest-Wait-First (LWF) is 6-speed O(1)- competitive. Not O(1)-competitive with < 1.618 speed [Edmonds-Pruhs’04]
13
What is known? Max Flowtime: FIFO is 2-competitive? [Bartal-Muthukrishnan’00] First published proof [Chang etal’08] NP-Hard [Chang etal’08]
14
Why is it difficult? Different schedules can do different amounts of work – should one wait to broadcast p in the hope of accumulating more requests or broadcast it now? In online case, a standard analysis technique from unicast scheduling does not apply [KPV’00]. No online algorithm even with O(1) speed is “locally” competitive in terms of queue size with respect to “all” schedules.
15
Key Open Questions Offline: approximability of basic questions. Average flowtime: is there an O(1) approx or a PTAS? Maximum flowtime: is there a c-approx for c < 2? L k norms of flowtime? Online: Is there a “scalable” algorithm for average flowtime? A (1+ ε )-speed O(f(1/ ε ))-competitive for every ε > 0? Competitive algorithms for L k norm, k > 1? Max weighted response time (the ∞ norm)
16
New Online Results Summary: Simpler/improved analysis of LWF New algorithms: LF, LF-W, LF-W+LF Scalable algorithm for max weighted flowtime [Im-Mosely’09] Scalable algorithm for average flowtime (*Scalable algorithm for L k norms?) Results extend to delay factor scheduling
17
New Online Results Simpler/improved analysis of LWF. Improved lower bound of 2- ε on speed required for O(1)- competitiveness New algorithms: LF, LF-W, LF-W+LF O(k)-speed O(k)-competitive algorith for L k norms Scalable algorithm for max weighted response time FIFO is 2-comp. for max flowtime with varying page sizes [Im-Mosely’09] Scalable algorithm for average flowtime (*Scalable algorithm for L k norms?) Above Results extend to delay factor scheduling Throughput scheduling as submodular function maximization, related results
18
Rest of Talk LWF and similar algorithms Simplified analysis of LWF Scalable algorithm for max weighted response time Concluding thoughts
19
Weighted case Each request J p,i has weight w p,i Observation: For average flowtime weights don’t matter in broadcast scheduling. Why? Also for L k norms for fixed k Weights make a big difference for k = ∞ (max weighted flowtime) Weighted case related to delay factor Helped understand/develop new algorithms
20
Understanding Broadcast MRF: most requested first Observation: MRF if not O(1)-competitive for any fixed speed s [K-P-V’00] 10p p 1 p 2 p 3... p n MRF OPT pppp pp1p1 pp2p2 2n
21
Understanding Broadcast MRF: most requested first Observation: MRF if not O(1)-competitive for any fixed speed s [K-P-V’00] Broadcast scheduling tradeoff: wait & merge requests for same page to save work accumulate flowtime Difficulty exemplified by lack of good offline algos
22
Longest Wait First (LWF) A(t): requests alive at time t For page p: W(p,t) = Σ (p,i) in A(t) w p,i (t- a p,i ) Schedule q = argmax p W(p,t) A natural and greedy algorithm/rule Seems to work well in practice First worst case analysis [Edmonds-Pruhs’04]
23
Longest First (LF) Generalize LWF to cost metrics/objectives (example L k norm of flowtime for k > 1) “Schedule page that has largest accumulated cost” LF k : LF for minimizing L k norms of flowtime LWF is same as LF 1 FIFO is same as LF∞ (for unweighted)
24
How good is LWF/LF? LWF requires 1.618 speed to be O(1)-comp. [EP’04] *LWF requires 2-ε speed to be O(1)-comp. even for unicast scheduling *LF k requires (k+1-ε) speed to be O(1) competitive for L k norms. LF∞ is not O(1) comp. with any const speed for weighted Why are LWF/LF not (as) good? They don’t distinguish between pages of same cost. Better to give preference to higher weight/more recent pages
25
How good are LWF/LF? LWF is 6-speed O(1) comp. Needs 1.618 speed [EP’04] LWF is 3.44-speed O(1)-comp. *Needs 2-ε speed even for weighted unicast scheduling LF k is O(k)-speed O(k)-comp for L k norms. *LF k needs (k+1-ε) speed. LF∞ is not O(1) comp. with any const speed for max weighted flowtime LF k performance deteriorates with k. Why?
26
Weakness of LWF/LF They do not distinguish between pages of same cost. Can give preference to low weight pages that have waited very long instead of high weight pages that arrived more recently Damage worse for large k Fix?
27
New Algorithm: LF-W LF-W(c) with parameter c ≥ 1 Fmax(t): maximum page at t Q(t): all pages alive at t with cost ≥ Fmax(t)/c Among pages of Q(t), schedule one with max weight/max number of requests
28
New Algorithm: LF-W LF-W(c) with parameter c ≥ 1 Fmax(t): maximum page at t Q(t): all pages alive at t with cost ≥ Fmax(t)/c Among pages of Q(t), schedule one with max weight/max number of requests Conjecture: LF-W(1/2) is O(1)-speed O(1)-comp for all k True for k=1 and k=∞
29
Hybrid: LF-W+LF LF-W(c)+LF For 9 of 10 time slots use LF-W(c) Use LF for the 10 th time slot
30
Hybrid: LF-W+LF LF-W(c)+LF For 9 of 10 time slots use LF-W(c) Use LF for the 10 th time slot Easier to analyze than LF-W(c) and provably good! *LF-W(1/2)+LF is O(1)-comp with O(1)-speed for all k? [Im-Mosely’09] (1+ε)-speed O(1/ε 11 ) competitive algorithm for average flowtime (variant of above)
31
Remaining time? Sketch of LWF analysis Sketch of LF-W analysis for max weighted flowtime The above two ingredients are key for all our results
32
Analysis of LWF Several nice/original ideas in [Edmonds-Pruhs’04] but difficult to read/understand We present a simpler view while borrowing the key ideas from [EP’04]. Allowed several subsequent improvements
33
Analysis of LWF Assume LWF is given 5 speed Partition requests into S and N S: self-chargeable F p,i ≤ c F* p,i N: non-self-chargeable F p,i > c F* p,i
34
Analysis of LWF Partition requests into S and N S: self-chargeable F p,i ≤ c F* p,i N: non-self-chargeable F p,i ≤ c F* p,i From definition: F(S) ≤ c OPT
35
Analysis of LWF Partition requests into S and N S: self-chargeable F p,i ≤ c F* p,i N: non-self-chargeable F p,i ≤ c F* p,i From definition: F(S) ≤ c OPT Key idea: show F(N) ≤ δ (F(S) + F(N)) = δ LWF for δ < 1 Charge part of LWF to itself!
36
Analysis of LWF Partition requests into S and N S: self-chargeable F p,i ≤ c F* p,i N: non-self-chargeable F p,i ≤ c F* p,i From definition: F(S) ≤ c OPT Key idea: show F(N) ≤ δ (F(S) + F(N)) = δ LWF for δ < 1 LWF = F(S) + F(N) ≤ c OPT + δ LWF therefore LWF ≤ c OPT/(1- δ )
37
Analysis for LWF Key idea: show F(N) ≤ δ (F(S) + F(N)) = δ LWF for δ < 1 Analyze N for each p pp LWF OPT p p LWF’s x’th and (x+1)st transmission of p I p,x OPT’s last p in I p,x
38
Analysis for LWF pp LWF OPT p p non-self chargeable requests N p,x for p in I p,x F p,x : their total flowtime OPT’s last p in I p,x
39
Analysis for LWF Observation: By time t*, reqs in N p,x have accumulated flowtime ≥ ½ F p,x pp LWF OPT p p t* non-self chargeable requests N p,x for p in I p,x F p,x : their total flowtime L L/2
40
Analysis for LWF Observation: By time t*, reqs in N p,x have accumulated flowtime ≥ ½ F p,x. Why did LWF do p i and not p at t? Implies flowtime for p i at t is ≥ ½ F p,x pp LWF OPT p p t* non-self chargeable requests N p,x for p in I p,x F p,x : their total flowtime L L/2 p1p2p3p4p5p1p2p3p4p5 t
41
Analysis for LWF Charge F p,x to flowtime of p 1 to p 5 : 5 F p,x /2 available at t pp LWF OPT p p t* L L/2 p1p2p3p4p5p1p2p3p4p5 t
42
Analysis for LWF Charging scheme: Can charge F p,x to any t in [t*,end of I p,x ], 5F p,x /2 available at t However, only half a time slot available; to avoid overcharging by other pages Thus 5F p,x /4 available to charge F p,x Thus overall, F(N) ≤ 4/5 LWF
43
Analysis for LWF Why can’t we charge F p,x to any t in interval? Multiple pages may want to charge to same t! pp LWF p p1p2p3p4p5p1p2p3p4p5 t p’ OPT
44
Analysis for LWF Charging scheme: why is a unique half-slot available?Use a matching argument similar to [E- P’04] Intuition: OPT has a unique broadcast for each (p,x) in N and we use only half the interval to charge pp LWF p p’ OPT
45
LF for L k norm of flowtime Easy modifications of our LWF analysis shows LF is O(k)-speed O(k)-competitive for L k norm of flowtime for any k ≥ 1 Also holds for L k norm of delay factor More technical and difficult analysis shows LWF is O(1)- competitive with 3.44-speed Conjecture: LWF is 2-speed O(1)-competitive matching lower bound
46
Minimizing Weighted Max Flowtime min max p,i w p,i F p,i Unweighted: FIFO is 2-competitive [Chang etal’08] Weighted Ω(W 0.4 ) lower bound where W is max weight even for unicast scheduling [C-Moseley’09] (related to lower bound for minimizing maximizing stretch [Bender- Chakrabarti-Muthukrishnan’98]) Need resource augmentation
47
Algorithm LF-W(c): Fmax(t) : max weighted flowtime of alive reqs at time t Q(t) = { alive request with F p,i (t) > Fmax(t)/c } Schedule page p with largest weight in Q(t)
48
Algorithm Theorem: If c > (1+2/ε), LF-W(c) is c 2 -competitive with a (1+ε)-speed server. Corollary: (1+ε)-speed O(1/ε 2 )-competitive algorithm for max weighted flowtime Note: algorithm’s parameter c depends on speed LF-W(c): Fmax(t) : max weighted flowtime of alive reqs at time t Q(t) = { alive request with F p,i (t) > Fmax(t)/c } Schedule page p with largest weight in Q(t)
49
Analysis t*: first time when some req J q,k has w q,k F q,k > c 2 OPT Key defn: t 1 is smallest time such that in I = [t 1, t*] all requests (p,i) done by algorithm satisfy w p,i F p,i ≥ OPT (flowtime worse than OPT) and w p,i ≥ w q,k (larger weight than (q,k)) t* t1t1 I
50
Analysis contd R = requests picked to schedule by LF-W during I x = OPT/w q,k Lemma 1: Every request in R is satisfied by OPT by a separate broadcast (even if they are for same page). Lemma 2: No request in R arrives before t 1 – 2cx Lemma 3: I is long, that is |I| ≥ (c 2 -c) x t* t1t1 |I| ≥ (c 2 -c) x t 1 – 2cx
51
Analysis contd Lemma 1: Every request in R is satisfied by OPT by a separate broadcast (even if they are for same page). Lemma 2: No request in R arrives before t 1 – 2c x Lemma 3: I is long, that is |I| ≥ (c 2 -c) x |R| = (1+ε) |I| since LF-W has (1+ε)-speed OPT has to do all these requests in [t 1 -2cx, t*] with 1 speed Contradiction by simple algebra if c > (1+2/ε) t* t1t1 |I| ≥ (c 2 -c) x t 1 – 2cx
52
Analysis contd Lemma 1: Every request in R is satisfied by OPT by a separate broadcast (even if they are for same page). Suppose (p,i) and (p,j) satisfied by OPT by same broadcast Flowtime of (p,i) ≥ OPT and (p,j) arrives after (p,i) is finished Thus if (p,i) and (p,j) are merged by OPT then F * p,i > OPT! t* t1t1 p,i t p,j
53
Analysis contd Lemma 2: No request in R arrives before t 1 – 2 x Suppose some request (p,i) in R arrived at t < t 1 – 2c x Case analysis to contradict definition of t 1 t* t1t1 |I| ≥ (c 2 -c) x t 1 – 2cx
54
Analysis contd Lemma 3: I is long, that is |I| ≥ (c 2 -c) x t* = a q,k + c 2 x, define t’ = a q,k + c x By t’, (q,k) has already accumulated c OPT flowtime, (q,k) is in Q(t) for all t in [t’,t*) otherwise contradicts defn of t* Implies t 1 ≤ t’ and hence |I| ≥ (c 2 -c)x t* t1t1 |I| ≥ (c 2 -c) x t 1 – 2cx
55
FIFO Can use LF-W analysis idea to show FIFO is 2- competitive for max flowtime even for varying sized pages Matches lower bound of 2 for deterministic algorithms even for unit-sized pages Proof is different from that of [Chang etal’08] who assume unit-sized pages and time-slot arrivals
56
Future Directions Offline: O(1) approx for average flow-time? How bad/good is the LP relaxation? Online: Tight bounds for LWF. Conjecture: 2-speed O(1)-comp Simplify/improve the new scalable algorithms of [Im- Moseley’09]. Potential function based analysis? Prove conjecture on LF-W(1/2) “Understand” BEUIQ and LAPS algorithms [E-P] Empirical evaluation of recent algorithms Batch scheduling
57
Thanks!
58
Delay Factor [Chang etal’08] Request J p,i has deadline d p,i Slack S p,i = d p,i – a p,i Delay factor D p,i = max (1, F p,i / S p,i ) 1 if job/request done before deadline, otherwise the relative delay when compared to slack syntactic similarity to w p,i = 1/S p,i Most of our results carry over to delay factor sched
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.