200 likes | 329 Views
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
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