better scalable algorithms for broadcast scheduling

22
1 Better Scalable Algorithms for Broadcast Scheduling Ravishankar Krishnaswamy Carnegie Mellon University Joint work with Nikhil Bansal and Viswanath Nagarajan (IBM T. J. Watson Research Lab)

Upload: clodia

Post on 16-Feb-2016

32 views

Category:

Documents


0 download

DESCRIPTION

Better Scalable Algorithms for Broadcast Scheduling. Ravishankar Krishnaswamy Carnegie Mellon University Joint work with Nikhil Bansal and Viswanath Nagarajan (IBM T. J. Watson Research Lab). Outline. Motivation, Problem Definition Existing Results, Our Results - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Better Scalable Algorithms for Broadcast Scheduling

1

Better Scalable Algorithms for Broadcast Scheduling

Ravishankar KrishnaswamyCarnegie Mellon University

Joint work with Nikhil Bansal and Viswanath Nagarajan (IBM T. J. Watson Research Lab)

Page 2: Better Scalable Algorithms for Broadcast Scheduling

Outline

• Motivation, Problem Definition

• Existing Results, Our Results

• A Weaker Approximation/ Analysis

• Conclusion

2

Page 3: Better Scalable Algorithms for Broadcast Scheduling

Motivation: Client-Server System

Clients Server

Page A at time 1

Page B at time 1

Page A at time 2Page C at time 3

Page A at time 3

Page APage BPage CPage Abroadcast

Page 4: Better Scalable Algorithms for Broadcast Scheduling

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

4

Page 5: Better Scalable Algorithms for Broadcast Scheduling

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

Page 6: Better Scalable Algorithms for Broadcast Scheduling

A Concrete Example

Instance has 3 pages

ABC

A B C

A B

B

A BC

Total Response Time: 1 + 2 + 3 + 3 + 3 = 12

A

Total Response Time: 2 + 3 + 1 + 1 + 1 = 8

Page 7: Better Scalable Algorithms for Broadcast Scheduling

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)

Page 8: Better Scalable Algorithms for Broadcast Scheduling

Our Results

8

A very simple (1+є) speed, O(1/є3)-competitive online algorithm. Can be extended to the setting when the pages have non-uniform sizes

Page 9: Better Scalable Algorithms for Broadcast Scheduling

High Level Idea

9

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

Page 10: Better Scalable Algorithms for Broadcast Scheduling

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

10

Page 11: Better Scalable Algorithms for Broadcast Scheduling

High Level Idea

11

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

Page 12: Better Scalable Algorithms for Broadcast Scheduling

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

12

Page 13: Better Scalable Algorithms for Broadcast Scheduling

Algorithm (with weaker guarantee)

• Round Robin: Possible Fix– Round robin over requests!

At any time, schedule each outstanding request to the same extent.

• Illustration

13

ABC

A B

A: 1/3B: 1/3C: 1/3

A: 2/4B: 1/4C: 1/4

A: 2/5B: 2/5C: 1/5

A: 1/4B: 2/4C: 1/4

A: 1/3B: 1/3C: 1/3

Page 14: Better Scalable Algorithms for Broadcast Scheduling

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.

14

Page 15: Better Scalable Algorithms for Broadcast Scheduling

Analysis

15

• 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,

15

Will give us a β-competitive online algorithm

Page 16: Better Scalable Algorithms for Broadcast Scheduling

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

16

Page 17: Better Scalable Algorithms for Broadcast Scheduling

Analysis Continued

• New request arrival– It belongs to NA(t) and NO(t)– Does not appear in potential function– No change in value

17

Page 18: Better Scalable Algorithms for Broadcast Scheduling

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)

18

We’re golden if NO(t) is even a tiny fraction of NA(t)

Page 19: Better Scalable Algorithms for Broadcast Scheduling

Analysis Continued

• Assume most unfinished requests are completed by OPT• Hope that Φ(t) goes down enough.

19

(i) We make progress on all jobs(ii)Each job’s z value goes down by 1/NA(t)(iii)Total decrease is NA(t)/2 * 1/NA(t) * 2

(iv)Left hand side is non-positive!Speed-Up

Page 20: Better Scalable Algorithms for Broadcast Scheduling

High Level Idea

20

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

Page 21: Better Scalable Algorithms for Broadcast Scheduling

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)

21

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.

Page 22: Better Scalable Algorithms for Broadcast Scheduling

Thank You

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 є?

22