200 likes | 342 Vues
This talk by Sanjay Shakkottai from UT Austin, in collaboration with Supratim Deb (Bell Labs) and Devavrat Shah (MIT), presents new fast matching algorithms tailored for repetitive optimization in switch scheduling. It covers key concepts like Maximum Weight Matching (MWM) in bipartite graphs, classic scheduling schemes, and identifies potential improvements in algorithm complexity. The foundational principles of MWM, its applications in network switches, and unsolved problems in the field are discussed. The goal is to enhance matching efficiency while maintaining acceptable delay levels.
E N D
Fast Matching Algorithms for Repetitive Optimization Sanjay Shakkottai, UT Austin Joint work with Supratim Deb (Bell Labs) and Devavrat Shah (MIT)
Outline • Refresher: MWM • Background: Switch Scheduling • Algorithm and Main Result • Unsolved Problems, Extensions, Other Applications • Conclusions
Maximum Weight Matching in a Bipartite Graph • Weight for each edge • Weight of matching =Sum of weights of matched edges • MWM maximizes the weight of the matching • Popular algorithms for obtaining MWM are O(N3)
Scheduling in Input Buffered Switches • Slotted System • Slot Duration=Packet transfer time • At each slot, an input port can deliver packet to at most one output • An output port can receive packet from one input port • The schedule corresponds to a matching
Popular Scheduling Schemes • iSLIP (used in Cisco Routers) • Low complexity and High Delay • Batch Scheduling • Apply MWM once every L slots • Does not provide good tradeoff between delay and complexity • MWM based on queue-lengths • High complexity and low delay
Why MWM? • Excellent Delay Properties • Comparable to output-buffered switches • Total queue-length grows linearly with switch size • Provides 100% throughput
Goal • Can we improve the complexity of MWM? • Use matching from the previous slot • Queue-lengths do not change by much in successive slots
Model and Notations • An arrival happens at an input port i and destined to output port k in a slot with probability ik • Stability if and only if • qik(t) is the number of packets at input port i, destined for output port k at time t
Primal: Max Subject to Dual: Min Subject to Primal and the Dual Problem • Facts: • Can ignore the integrality constraint • There exists integral dual solutions
Key Idea • (x,r,p) optimal if • xij=1 ) dij=ri+pj-qij=0 (complementary slackness CS) • (x,r,p) feasible (F) • As the qij ‘s change by +1 or –1, adjust the r’s and p’s by adding +1 and –1 so that CS and F are maintained
Basic Algorithm • Suppose q11 increases by +1 • If d11>0, CS and F not violated
Basic Algorithm • Suppose q11 increases by +1 • If d11>0, CS and F not violated • If d11=0, add +1 to r’s and subtract –1 from p’s till CS and F are satisfied
Basic Algorithm • Suppose q11 increases by +1 • If d11>0, CS and F not violated • If d11=0, add +1 to r’s and subtract –1 from p’s till CS and F are satisfied
Basic Algorithm • Suppose q11 increases by +1 • If d11>0, CS and F not violated • If d11=0, add +1 to r’s and subtract –1 from p’s till CS and F are satisfied
Basic Algorithm • Suppose q11 increases by +1 • If d11>0, CS and F not violated • If d11=0, add +1 to r’s and subtract –1 from p’s till CS and F are satisfied
Basic Algorithm • Suppose q11 increases by +1 • If d11>0, CS and F not violated • If d11=0, add +1 to r’s and subtract –1 from p’s till CS and F are satisfied
Basic Algorithm • Suppose q11 increases by +1 • If d11>0, CS and F not violated • If d11=0, add +1 to r’s and subtract –1 from p’s till CS and F are satisfied
Complexity • Run the basic algorithm for each qij that changes • Complexity is O(N2 + NE) where E=no of non-empty queues • Need to take special care of nodes having zero queues
Theorem • If < 0.5, given an MWM from the previous slot, a new MWM can be computed in expected O(N2) operations • Conjectured to be true for <1 • Require total queue-length to be O(N) under MWM (simulations suggest so) • Conjecture: The expected complexity is O(Nlog(N))
Extensions and Applications • Improve the complexity bound • Devise good incremental MWM algorithm for a more general graph