110 likes | 261 Vues
This talk presents a detailed overview of scheduling algorithms for input-queued crossbar switches, focusing on how to effectively match inputs with outputs to optimize queueing performance. We explore the quality of service, the relationship between scheduling and performance, and introduce concepts such as state space collapse and workload management. The implications of various scheduling algorithms, including maximum weight matching, are discussed to illustrate their impact on system efficiency and queue performance. A conjecture for an optimal scheduling algorithm is proposed, aiming for maximum service utilization.
E N D
Note. The animations in these slides have been removed. For the full set of slides, including animations, download http://www.cs.ucl.ac.uk/staff/D.Wischik/Talks/switch-infocom.zip optimal scheduling algorithmsfor input-queued switches Devavrat Shah, MIT Damon Wischik, UCL
Input-queued crossbar switch • The matching (or scheduling) algorithmdecides which inputs to match with which outputs • What is a good scheduling algorithm? • What is the quality of service / queueing performance? • What is the relationship between scheduling and performance?
Example: Serve the longer queue second queue size first queue size
Example: Serve the longer queue • The system is basically one-dimensional + noise • If we keep track of the total queue size W, we can deduce the individual queue sizesQ1≈ Q1≈ W/2 • This relationship does not depend on the arrival rates (so long as the system is stable) second queue size first queue size
Example: Serve the longer queue • Another way to visualize this relationship is to plot both • the actual queue sizes • the queue sizes estimated from the workload W, Q1=Q1=W/2 • These agree almost perfectly second queue size firstqueue secondqueue totalworkload first queue size
Terminology • State space collapse (SSC) • the fact that the vector of queue sizes Q can be written as a function of the workload W, Q=ΔW • Workload • a carefully chosen sum of queue sizes • Lifting map • Δ • Collapsed (or invariant) space • { (Q1, Q2) : Q1= Q2 } • more generally, the set of achievable Q=ΔW, as W varies
Input-queued switches have state space collapse! • For a n×n switch there are n2 queues to keep track of • The workload vector lists the total queue size for each input port and for each output port, and it has dimension 2n-1 • The lifting map Δ depends on the scheduling algorithm • Here I’ve illustrated the maximum weight matching scheduler: • at each time step, choose a set of queues to serve so that the sum of their queue sizes is as large as possible
Technical details • Method • write down differential equations describing the system, i.e. a fluid model • use combinatorial techniques to prove convergence, and to characterize the fixed points • use heavy traffic queueing theory to show that as the load on the switch increases, fluctuations in Q away from ΔW become negligible compared to Q • Lifting map: for arrival rate matrix λ, q=Δw is the unique solution to
Why is this useful? (I) • We’ve shown that Q=ΔW • Once we’ve found Δ it’s easy to work out if any queues are persistently small, i.e. guaranteed good quality of service • We can also see if giving priority to some queues has a negative impact on others
Why is this useful? (II) • We’ve shown that Q=ΔW • W is easier to reason about than Q • In those states where every queue is non-zero, the switch is work-conserving (i.e. no service is wasted) • It’s therefore useful to look at the space {W : ΔW >0} and to choose the scheduling algorithm to make this as big as possible • We’ve used this to conjecture an optimal scheduling algorithm • i.e. one which never wastes service because of poor scheduling(in a stochastic limit sense) • At each timestep, it considers all max-size matchings, and chooses one with maximum log-weight
Conclusion • We have reduced the problem of analysing scheduling algorithms to questions about the algebra of Δ • It’s hard algebra! • So far we only know Δ for a small class of algorithms, variations on maximum-weight matching • The same approach works for any generalized switch, e.g. schedulers in wireless base-stations