1/14 Introduction Motivation Objective
Problem Description
On Scheduling over Multi-server Wireless Systems
Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
Sanjay Shakkottai The University of Texas at Austin
Joint work with Shreeshankar Bodas, Lei Ying, R. Srikant
February 4, 2010
2/14 Introduction Motivation Objective
Motivation Investigate scheduling in
OFDM1
downlink networks
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
1
Orthogonal Frequency Division Multiplexing
3/14
Motivation Channel allocation (to be determined)
Introduction Motivation Objective
z
Problem Description Analysis
Air interface
{
z
Channel 1 Q1 Channel 2
Why not MaxWeight? Proposed Algorithm
Conclusions
}|
Q2
Channel 3 Channel 4
Q3
Channel 5 Channel 6
Q4
Figure: System model - first glance
}|
{
4/14
Objective
Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
Prime performance metric: network stability Design throughput-optimal scheduling algorithms MaxWeight-type algorithms [TasEph’92], various extensions [Sto’04], [ShaSriSto’04], [ErySriPer’05], [YinSriEry’06], [VenLin’07], . . .
4/14
Objective
Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
Prime performance metric: network stability Design throughput-optimal scheduling algorithms MaxWeight-type algorithms [TasEph’92], various extensions [Sto’04], [ShaSriSto’04], [ErySriPer’05], [YinSriEry’06], [VenLin’07], . . .
Conclusions
Delay: important performance metric Real-time traffic (voice/video/. . .) Closely related to queue-lengths at base-station Comparatively, much less investigated [GanModTsi’07], [KitJav’08]
5/14
Our Contribution
Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
Fact
[Sigmetrics 2009]
Longest-queues-first type algorithms ⇒ optimal small-queue performance (large deviations sense) Three important questions: LQF throughput-optimal? Small-queue performance of MaxWeight? Throughput optimality + small-queues + low-complexity?
5/14
Our Contribution
Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
Fact
[Sigmetrics 2009]
Longest-queues-first type algorithms ⇒ optimal small-queue performance (large deviations sense) Three important questions: LQF throughput-optimal?
Yes
Small-queue performance of MaxWeight?
Very poor
Throughput optimality + small-queues + low-complexity?
Yes
6/14 Introduction Motivation Objective
Problem Description Multiuser, multichannel system A1 (t)
Problem Description Analysis
X11 (t)
S1
Q1 A2 (t)
Why not MaxWeight? Proposed Algorithm
X22 (t)
S2
Q2 Xn1 (t)
Conclusions
An (t)
Xnn (t)
Sn
Qn
Figure: System model
4G-systems [WiMax], [LTE] Several tens of users per base station OFDM-based slotted-time air-interface at base station
7/14 Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
Problem Description Arrivals, channels: i.i.d., Bernoulli One server can serve at most one user
7/14 Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
Problem Description Arrivals, channels: i.i.d., Bernoulli One server can serve at most one user Aims: Network stability Low complexity Short longest queue
7/14 Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
Problem Description Arrivals, channels: i.i.d., Bernoulli One server can serve at most one user Aims: Network stability Low complexity Short longest queue Mathematically, want positive value of −1 log P max Qi (0) > b , α(b) := lim inf n→∞ n 1≤i≤n for fixed integer b ≥ 0. α(b) is called the rate-function.
P(Qmax (0) > b) ≈ exp(−nα(b)), for n large.
8/14
MaxWeight In Action Before allocation
Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
After allocation
10
S1
5
9
S2
9
9
S3
9
Conclusions
3
S4
3
3
S5
3
Edge used for allocation Edge available for allocation
Theorem MaxWeight results in zero rate-function.
9/14
More Balanced Allocation Before allocation
Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
After allocation
10
S1
7
9
S2
8
9
S3
8
Conclusions
3
S4
3
3
S5
3
Edge used for allocation Edge available for allocation
Queue-lengths closer to each other Smaller longest queue
10/14 Introduction Motivation Objective
Problem Description
Server-Side Greedy Allocation First round of service
Second round of service
S1
S2
S2
S3
S3
S4
S4
Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
Third round of service
Fourth round of service
S3
S4
S4
Final queue-lengths
11/14 Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
Main Result SSG is throughput-optimal Yields strictly positive rate-function ⇒ small queues! (Compare with MaxWeight: zero rate-function)
Complexity = O(n2 ) computations per timeslot (Compare with MaxWeight: Ω(n2 ))
Intuition: MaxWeight: simultaneous server-allocations - Drains longest queues by too much - Service wastage issues (matter in small-queues regime!)
SSG: iterative resource allocation - Natural modification of MaxWeight - Uses every last drop of service
12/14 Introduction Motivation Objective
Simulations SSG much better than MaxWeight in all regimes tested
Problem Description
Performance of the SSG and MaxWeight Algorithms for p = 0.095, q = 0.75, Bursty (0 − 10) arrivals
0
10
n n n n n n
Analysis Why not MaxWeight? Proposed Algorithm
i
i
P(max Q (t) > b)
Conclusions
−1
10
−2
10
= = = = = =
50, MW 80, MW 100, MW 50, SSG 80, SSG 100, SSG
−3
10
−4
10
−5
10
−6
10
0
20
40
60 Buffer size (b)
80
Figure: Buffer overflow probabilities
100
120
13/14 Introduction Motivation Objective
Simulations MaxWeight’s performance worsens with system-size
Problem Description
Performance of the SSG and MaxWeight Algorithms for p = 0.095, q = 0.75, Bursty (0 − 10) arrivals
0
10
Analysis
Conclusions
n n n n n n
−1
10 P(Packet delay ≥ D)
Why not MaxWeight? Proposed Algorithm
−2
10
= = = = = =
50, MW 80, MW 100, MW 50, SSG 80, SSG 100, SSG
−3
10
−4
10
−5
10
−6
10
0
50
100 150 Delay D (timeslots)
Figure: Packet delay profiles
200
250
14/14
Conclusions
Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
Throughput and delay are not conflicting requirements New intuition: iterative resource allocation for guaranteeing small delay Scale the number of users and bandwidth, not buffer-length or time Present a stable, low-complexity algorithm (SSG) that gives good small-queue performance
14/14
Conclusions
Introduction Motivation Objective
Problem Description Analysis Why not MaxWeight? Proposed Algorithm
Conclusions
Throughput and delay are not conflicting requirements New intuition: iterative resource allocation for guaranteeing small delay Scale the number of users and bandwidth, not buffer-length or time Present a stable, low-complexity algorithm (SSG) that gives good small-queue performance
Questions / comments ?