Transcript Document
Capacity Allocation Paradox Isaac Keslassy Joint Work with Asaf Baron and Ran Ginosar EE Department, Technion, Haifa, Israel The Capacity Allocation Paradox Node A Router CA RA Node C CR Node B CB RB Finite (small) buffers Unlimited queues Capacity Allocation Paradox: Adding Capacity Can Destabilize the Network 2 Marakana Soccer Stadium UnStable Stable Safety Check Brazillian Line Enter the stadium Fast Security Check Argentinian Line Fast Swipe Ticket Entrance Fast Security Check Slow Security Check 3 Motivation Small buffer networks are widely used Network On-Chip SpaceWire Interconnection of Computers When QoS not met: add capacity [Guz et al., ’06] May destabilize the network 4 Previous Work: Selfish Routing Braess’s Paradox (1968) Difference: We assume fixed routing 5 Previous Work: Cyclic Dependency Kumar & Seidman (1990) Dai, Hasenbein & Vande Vate (1998) Instability even though capacity > data rate Adding capacity may destabilize a network Differences: No cycles in dependency graph Single router Each packet visits router only once Several simple arbitration policies Independent of initial conditions New fundamental reason: Finite buffers 6 A General Phenomenon Finite (small) buffers Arrivals: Periodic, Poisson… Node A Router 1. 2. 3. 4. Round Robin Exhaustive Round Robin Strict Priority General Processor Sharing CA RA Node C CR Node B CB RB Unlimited queues When buffer is full: 1. Blocking: Wormhole Routing 2. Dropping (with retransmission): Store And Forward 7 Intuition Assume A has priority: Node A Router CCA=2 A=1 1 [pkt/T] Node C CR=2 Node B 1 [pkt/T] CB=1 Buffer of 1 bit Share of CR 2 (a) CA=1 1 A1 A2 A3 B1 B2 B3 T Share of CR 3T 2T (a) 2 (b) CA=2 1 A1 B1 (1) T/2 T A2 B1 (2) 3T/2 (b) 2T A3 B2 (1) 5T/2 3T 8 What are the conditions for stability? Necessary conditions: Node A CA RA Node C CR RA RB Node B CB CB RB Stability Regions, CR =0.273Mflits/sec 0.5 0.45 0.4 0.3 0.25 B CR is constant RA = RB 0.35 C [Mflit/sec] 0.2 0.15 0.1 0.05 0.05 0.1 0.15 0.2 0.25 0.3 CA [Mflit/sec] 0.35 0.4 0.45 0.5 CA 9 Stability Regions, CR =0.273Mflits/sec Case #1: CA CB CR 0.5 0.45 0.4 0.35 0.25 B Buffers in the router hold no more than one data unit C [Mflit/sec] 0.3 0.2 0.15 ? 0.1 Queue A 0.05 Buffer A 0.05 0.1 0.15 0.2 0.25 0.3 CA [Mflit/sec] 0.35 0.4 0.45 0.5 CA CR Queue B CB Node C Buffer B Necessary conditions are also sufficient. 10 Example 1: Analysis Stability Picture CR = 273[Kf/s] (Constant) EPRR 500 450 2 400 4 350 0 RA = R B = 100[Kf/s] 250 CB [Kf/s] C B [Kf/s] 300 2 3 200 150 1 100 0 50 50 100 150 200 CA [Kf/s] 250 CA [Kf/s] 300 350 400 450 500 11 Example #1 – Capacity Allocations Analytic Stability regions, CRC =0.273Mflits/sec 0.5 0.45 0.4 2 4 3 2 0.3 0.25 C BR [Mflit/sec] 0.35 0.2 0.1 Case #3 #2 #1 UnStable Stable 1 0.15 0.05 0.05 0.1 0.15 0.2 0.25 0.3 CAR [Mflit/sec] 0.35 0.4 0.45 0.5 Node A CA=190 =300 =110 RA = 100 Node C CR=273 Node B RB = 100 CB=150 =110 1000 [flits/pckt] Buffer Size: 16 Flits Exhaustive Round Robin, Wormhole 12 Results – Simulation Stability Regions C = 273[Kf/s] (Constant) Analytic+Simulation Stability regions for CR =0.273Mf/s R 325 4 2 300 275 RA = R B = 100[Kf/s] 225 3 B C [Kf/s] 250 200 2 175 150 125 1 125 150 175 200 225 CA [Kf/s] 250 275 300 325 13 Example #2 – Wormhole Routing GPS GPS Round-Robin RRPF 500 450 450 450 400 400 400 350 350 350 300 B 300 B 300 C [Kf/s] 500 C [Kf/s] 500 B C [Kf/s] ExhaustiveEPRR Round Robin 250 250 250 200 200 200 150 150 150 550 600 CA [Kf/s] 650 700 550 600 CA [Kf/s] 650 700 550 600 CA [Kf/s] 650 700 1000 [flits/pckt], Buffer Size: 16 Flits, RA = 500kf/s, RB = 100kf/s 14 Example #3 – Store and forward Exhastive, CRC=2.1Mbit/sec Exhaustive RR, CR = 2.1[Mbit/s] 2.5 2.25 2.25 2 2 [Mbit/sec] 2.5 1.75 1.75 C C BR BR [Mbit/sec] Priority, CRC=2.1Mbit/sec Strict Priority, CR = 2.1[Mbit/s] 1.5 1.5 1.25 1.25 1.25 1.5 1.75 2 CAR [Mbit/sec] (a) 2.25 2.5 1.25 1.5 1.75 2 CAR [Mbit/sec] 2.25 2.5 (b) Poisson Arrivals with Parameters: lA = 100, lB = 100 Packet Length 10^4 bit Buffer Size 3-4 packets 15 Example #3 – Store and forward C =6.1Mbit/sec RR, Round-Robin, CR = 6.1[Mbit/s] ExhaustiveExhastive, RR,C C=6.1Mbit/sec R = 6.1[Mbit/s] RC RC 3 2.5 2.5 [Mbit/sec] 3 BR C BR C All packets need to arrive sometime 3.5 [Mbit/sec] Poisson Arrivals: lA = 500 lB = 100 Packet = 10^4 bit Buffer 3 packets 3.5 2 2 1.5 1.5 5.25 5.5 5.75 6 CAR [Mbit/sec] (c) 6.25 6.5 5.25 5.5 5.75 6 CAR [Mbit/sec] 6.25 6.5 (d) 16 Summary Adding capacity may destabilize even a simple network The scheduling algorithm affects the stability of the network (even if workconserving) GPS arbitration: always stable 17 Thank you. 18