220 likes | 314 Vues
This talk discusses better, scalable algorithms for broadcast scheduling in client-server systems to minimize response times for page requests. It presents motivations, problem definitions, existing results, and introduces a new, competitive online algorithm with improved approximations. The talk focuses on the fractional relaxation of broadcast scheduling, introducing a high-level idea and detailed algorithms to enhance performance. It explores the analysis, potential functions, and rounding strategies to achieve efficient broadcast scheduling in various scenarios. Additionally, the discussion covers speed-up techniques and competitive ratios to optimize scheduling strategies effectively.
E N D
Better Scalable Algorithms for Broadcast Scheduling RavishankarKrishnaswamy Carnegie Mellon University Joint work with Nikhil Bansal and ViswanathNagarajan (IBM T. J. Watson Research Lab)
Outline • Motivation, Problem Definition • Existing Results, Our Results • A Weaker Approximation/ Analysis • Conclusion
Motivation: Client-Server System Page A at time 1 Page A at time 3 Page B at time 1 Page C at time 3 Page A at time 2 Page C Page A Page B Page A Clients Server broadcast
Motivation: Formalizing • Consider a server which has n unit-sized pages • Requests for these pages arrive online, over time • At each time slot, we can broadcast one page • All pending requests for that page are satisfied • How do we schedule to minimize average response time of requests
Online Broadcast Scheduling • Input • A collection of n pages • A request sequence arrives online • Request r: arrival time a(r), requested page p(r) • Output • A broadcast of pages, one at a time • Objective Function • Minimize Average Response Time • Minimize Maximum Response Time • … This Talk
A Concrete Example Instance has 3 pages A B C A B Total Response Time: 1 + 2 + 3 + 3 + 3 = 12 A B C A B C A B Total Response Time: 2 + 3 + 1 + 1 + 1 = 8
Existing Results (Average Response Time) • In the offline setting • O(log2n)-approximation algorithm [BCS06] • In the online setting • very strong lower bounds if no speed-up • (2+є) speed-up, O(1/є2)-competitive [EP09] • (1+є) speed-up, O(1/є11)-competitive [IM10] • (works only for unit-size pages)
Our Results A very simple (1+є) speed, O(1/є3)-competitive online algorithm. Can be extended to the setting when the pages have non-uniform sizes
High Level Idea Consider “Fractional” Relaxation of Broadcast Scheduling Get (1+є) speed, O(1/є2) competitive online algorithm Design an online rounding algorithm, with further O(1/є) loss in obj. function
Fractional Relaxation • At each time slot, we can broadcast multiple pages, each to extent xpt • Such that • A request r is satisfied at the first time b(r) when • Minimize
High Level Idea Consider “Fractional” Relaxation of Broadcast Scheduling Get (1+є) speed, O(1/є2) competitive online algorithm Design an online rounding algorithm, with further O(1/є) loss in obj. function
Algorithm (with weaker guarantee) • Round Robin • Known to give online algorithms with good competitive ratio for other scheduling problems assuming factor of 2 speed-up • What about broadcast scheduling? • Naïve algorithm is bad • Does not differentiate pages with many outstanding requests and those with 1 request
Algorithm (with weaker guarantee) • Round Robin: Possible Fix • Round robin over requests! At any time, schedule each outstanding request to the same extent. • Illustration A: 1/3 B: 1/3 C: 1/3 A: 2/4 B: 1/4 C: 1/4 A: 2/5 B: 2/5 C: 1/5 A: 1/4 B: 2/4 C: 1/4 A: 1/3 B: 1/3 C: 1/3 … A B C A B
Algorithm (with weaker guarantee) • Round Robin: Possible Fix • Round robin over requests! At any time, schedule each outstanding request to the same extent. • Can we show anything for this algorithm? • Edmonds and Pruhs showed it is 4-speed O(1) competitive • We show that fractionally, it is 2-speed O(1) competitive • Later round it to get integer schedule.
Analysis • Resort to an amortized analysis • Define a potential function Φ(t) which is 0 at t=0 and t= • Show the following: • At any request arrival, ΔΦ ≤ 0 • At all other times, Will give us a β-competitive online algorithm 15
For our Problem • Define • rank(r) is sorted order of requests w.r.t arrival times (most recent has highest rank) • z(r,t) is the amount of time the online algorithm will dedicate towards request r, in the future, i.e. after time t
Analysis Continued • New request arrival • It belongs to NA(t) and NO(t) • Does not appear in potential function • No change in value
Analysis Continued • Running Condition: Consider [t-1, t) • Opt schedules a page and finishes some requests • These terms will now appear in the potential function. • How much increase will it cause? • The sum of the z(r,t) over all these requests is at most 1 • Total increase is at most NA(t) We’re golden if NO(t) is even a tiny fraction of NA(t)
Analysis Continued • Assume most unfinished requests are completed by OPT • Hope that Φ(t)goes down enough. We make progress on all jobs Each job’s z value goes down by 1/NA(t) Total decrease is NA(t)/2 * 1/NA(t) * 2 Left hand side is non-positive! Speed-Up
High Level Idea Consider “Fractional” Relaxation of Broadcast Scheduling Get (1+є) speed, O(1/є2) competitive online algorithm Design an online rounding algorithm, with further O(1/є) loss in obj. function
Rounding: One Slide Overview • Consider the fractional algorithm’s output • Let request r be fractionally completed at time b(r) • Enqueue element <r, b(r) – a(r)> • At any time, choose request with least width and display corresponding page. Wipe out all outstanding requests for page p(r) Suppose a request was forced to wait for too much time. Then many other requests for different pages all having smaller width. Too much mass packed fractionally. A contradiction.
Summary + Open Question • Near-optimal algorithm for broadcast scheduling • Consider “fractional relaxation” • Give good algorithm for fractional problem • Give rounding scheme for integral problem • But algorithm depends on є • Not fully-scalable • Can we get one such algorithm which works for all є? • Thank You