hira: a methodology for deadlock free in hierarchical on...
Post on 04-Jun-2018
216 Views
Preview:
TRANSCRIPT
HiRA: A Methodology for Deadlock Free Routing in Hierarchical Networks on Chip
Rickard Holsmark1, Maurizio Palesi2, Shashi Kumar1 and Andres Mejia3
NoC Symposium
San Diego, May 10‐13, 2009
1Jönköping University, Sweden 2University of Catania, Italy 3Technical University of Valencia, Spain
Contents
• Introduction
Hierarchical networks
Deadlock free hierarchical routing
• Hierarchical deadlock free routing methodology
Basic idea and theoretical framework
Design methodology
• Evaluation
Simulation results
• Conclusions
Rickard Holsmark 2NoC Symposium, San Diego, May 10‐13, 2009
The Road to Network on Chip and Beyond
Networks on Chip (NoC)
Transistor
1960
1970
1980
System on Chip
1990
2000
Integrated Circuits
Microprocessor
Evolution of building blocks in electronic system design
Networks of NoCs
2010
Rickard Holsmark 3NoC Symposium, San Diego, May 10‐13, 2009
Hierarchical Networks
• Hierarchical networks in system designReuse of networks as subnets
Partitioning large networks
• Examples of hierarchical NoCsHybrid ring/mesh
• Optimization global/local traffic (Bourduas and Zilic, 2007)HiNoC , mesh/fat-tree
• Efficient GALS, asynchronous mesh/synchronous tree (Hollstein et al., 2006)
• Our approach to hierarchical networksHeterogeneous interconnect
• Subnets and subnet interconnectRouting
• Use “optimal” routing algorithm for each subnet
Rickard Holsmark NoC Symposium, San Diego, May 10‐13, 2009 4
Issues when Combining Networks
• Different structures
Switching • Store and forward – wormhole
Routing control• Source ‐ distributed
Deadlock strategy• Avoidance ‐ recovery
Physical implementation
• Given identical structures
Different routing algorithms -> deadlock problems
Rickard Holsmark 5NoC Symposium, San Diego, May 10‐13, 2009
Deadlock Free Routing when Combining Networks
Deadlock free?
-Whole network must be considered
Shared Mem
Routing Alg. N
Each subnet deadlock free
Network
Routing Alg. S3 Routing Alg. S4
Shared Mem
Routing Alg. S2Routing Alg. S1
Rickard Holsmark 6NoC Symposium, San Diego, May 10‐13, 2009
Network
Hierarchical Deadlock Free Routing
Deadlock free?
Deadlock free subnets + rules +
external routing algorithm
Shared Mem
Routing Alg. H
Routing Alg. S3 Routing Alg. S4
Shared Mem
Routing Alg. S2Routing Alg. S1
Each subnet deadlock free
Routing Alg. S2Routing Alg. S1
Routing Alg. S3 Routing Alg. S4
Routing Alg. E
Rickard Holsmark 7NoC Symposium, San Diego, May 10‐13, 2009
Revising Packet Deadlocks
• Deadlock
Packets involved in a circular wait
Risk increased by using wormhole switching
Avoid/recover/drop
• Avoidance techniques
Analysis: Channel dependency graphs (CDG), Turn-model, Channel wait for graphs (CWG)
Implementation: Restrict packet routes
• Examples of algorithms
Odd-even, X-Y, Negative-first, Up/Down
Rickard Holsmark 8NoC Symposium, San Diego, May 10‐13, 2009
1 2
3 4
P1
P2
P3
P4
P1
1 2
3 4
P2
P3
P4
Deadlock Example
Packet Deadlock No Packet Deadlock
Four packets: P1,..,P4
Require turns: ,..,-Based on previous decisions (turns)
Restrict turn
Rickard Holsmark 9NoC Symposium, San Diego, May 10‐13, 2009
Deadlock Freedom and CDG
l21
l13
l34
l42
l12
l31
l43
l24
1 2
3 4
l21
l13
l34
l42
l12
l31
l43
l24
Topology Channel dependency graph (CDG)
Cycles in CDG = not deadlock free
Cut all cycles
1 2
3 4
Implement routing restrictions
= deadlock free
Rickard Holsmark 10NoC Symposium, San Diego, May 10‐13, 2009
Deadlocks when Interconnecting Networks
Subnet A Subnet B
Bi-directionalrouting restriction
Cycle
Analyze CDG
Two deadlock free networks interconnected
‐ Possibility of cycle in CDG
‐May not be deadlock free and connected
Rickard Holsmark 11NoC Symposium, San Diego, May 10‐13, 2009
Deadlock Free Interconnection of Networks
Moved routing restrictions
Subnet A Subnet B
No cycle
Analyze CDG
The two networks again
‐ No CDG cycle formed
‐ Deadlock free and connected
‐ Safe interconnection nodes
Rickard Holsmark 12NoC Symposium, San Diego, May 10‐13, 2009
Deadlock Free Hierarchical Routing
• Method for interconnecting deadlock free (sub-) networks
Resulting network is deadlock free and connected
Internal subnet routing algorithms un-changed
• Hierarchical network structure
Subnets• Networks with independent (deadlock free) routing algorithms
Boundary nodes• Subset of nodes in a subnet that connects to other subnets
External links• Links between subnets (are not in any subnet)
Rickard Holsmark 13NoC Symposium, San Diego, May 10‐13, 2009
Hierarchical Network Structure
Internalnodes/links
Boundary node
Subnet
External link S4
S1
S2
S6
S5
S3
Rickard Holsmark 14NoC Symposium, San Diego, May 10‐13, 2009
Hierarchical Routing Algorithm
• Building blocks
Subnet routing algorithms• Given, routes inside subnets (internal subnet links)
External routing algorithm• Routes between subnets (external and internal links)
Safe boundary nodes (interconnections nodes)• Prohibits un‐resolvable CDG cycles • Defined in each subnet
• Complete hierarchical routing algorithm
Combination of subnet internal and external algorithms
Usage of safe boundary nodes enable deadlock freedom
Rickard Holsmark 15NoC Symposium, San Diego, May 10‐13, 2009
Hierarchical Route Example
Internal routingalgorithm Ri
Subnet Sj
External routing restriciton
ns
bs
bd
nd
Subnet Si
Routing a packet from subnet Si to subnet SjoSource node ns , destination node nd
1. Node ns : RG (nd)=Ri (bs)(internal route)
2. Node bs : RG (nd)=RG (bd)(external route)
3. Node bd : RG (nd)=Rj (nd) (internal route)
External routing algorithm RG
Internal routing algorithm Ri
Internal routing restricitons
Rickard Holsmark 16NoC Symposium, San Diego, May 10‐13, 2009
Safe Boundary Nodes
Negative-first routing restrictions
All safe Boundary nodes (4 of 6)
CDG
Safe if no CDG path
Subnet S6
Example of safe boundary nodes in a subnetRouting algorithm in subnet S6: Negative‐first
Rickard Holsmark 17NoC Symposium, San Diego, May 10‐13, 2009
Theoretical Foundation
• Theorem: A hierarchical routing algorithm is deadlock free and connected if
all subnet routing algorithms are deadlock free,
the external routing algorithm is deadlock free
and subnets are interconnected by safe boundary nodes
• Proof logic
Subnet CDGs and external CDG acyclic• External CDG: Restrictions on safe boundary nodes
Combined dependencies • Safe boundary nodes: Only from one boundary node to another boundary node
Acyclic CDG for combined (hierarchical) algorithm: Deadlock free• All restricted external routes included in analysis: Connected
Rickard Holsmark 18NoC Symposium, San Diego, May 10‐13, 2009
Identification of Safe Boundary Nodes
l21
l13
l34
l42
l12
l31l43
l24
l21
l13
l34
l42
l12
l31l43
l24
Cycle enabled Cycle disabledSafeUnsafe
Termination
Succesful terminationNot succesful termination
Rickard Holsmark 19NoC Symposium, San Diego, May 10‐13, 2009
Finding Safe Nodes
Possible Safe nodes?
Deterministic routingAll network nodes are safe nodes (assuming bi-directional links)
Adaptive routingNot all nodes are safe nodesNumber of and positions of safe nodes vary
Depends on routing algorithmTwo main types
(Algorithms with Deadlock freedom based on acyclic CDG)
Rickard Holsmark 20NoC Symposium, San Diego, May 10‐13, 2009
Designing External Routing Algorithm
• Deadlock free external routing algorithm
Un-changed internal algorithms• Internal paths between safe boundary nodes given
If cycles in external CDG: • Restrictions on boundary node links (external‐internal, external‐external)• Affects only external traffic
• External routing algorithm = ”normal” routing algorithm
Links: External links and internal paths between boundary nodes
Nodes: Boundary nodes and internal nodes on internal boundary node paths
Rickard Holsmark 21NoC Symposium, San Diego, May 10‐13, 2009
Example: External Algorithm
Externalrestrictions
S4
S1
S2
S6
S5
S3
X-Y
External routing restrictions(effectíve dependencies, safe nodes)
Cycle free external CDG
Rickard Holsmark 22NoC Symposium, San Diego, May 10‐13, 2009
Interconnection of Y‐X and X‐Y Networks
X-YY-X Y-X
External routing X-Y
X-YY-X Y-X
Simply connect:-Cycle, not deadlock free
Hierarchical: -No cycles, deadlock free
X-YY-X Y-X
No path Not allowed (X-Y)
Rickard Holsmark 23NoC Symposium, San Diego, May 10‐13, 2009
Evaluation Set‐Up
• Noxim network simulator
Wormhole switching• Packet size randomly between 2 and 8 flits
• Traffic types
Synthetic: Standard types (random, transpose,…)
Application: Communication graphs from research papers • (Hu and Marculescu, 2005), (Yoon, Lee and Park, 2006), (Jaspers and de With, 1999), (van der Tol and Jaspers, 2001)
• Destinations
Local traffic: Communication within subnets
Global traffic: Communication between subnets
Rickard Holsmark 24NoC Symposium, San Diego, May 10‐13, 2009
Average Delay Synthetic Traffic
Four subnets with different traffic types
0% 2% 4% 9% 13% 17% 22%0
10
20
30
40
50
60
70
80
90
100
XY
Odd-Even
West-First
Hierarchical
Global to Local ratio
Aver
age
dela
y (c
ycle
s)
Average delay for each routing algorithmunder varying global /local ratio
Rickard Holsmark 25NoC Symposium, San Diego, May 10‐13, 2009
Throughput Jitter Application Traffic
XYNegativeFirst
NorthLastWestFirst
OddEvenAPSRA
Hierarchical
0.000.200.400.600.801.001.201.401.601.80
MMS-EncMMS-DecPIPMWDMIMO-OFDM
Nor
mal
ized
Thr
ough
put J
itter
Normalized throughput jitter for each algorithm and application
Five core subnets + one memory subnet
Rickard Holsmark 26NoC Symposium, San Diego, May 10‐13, 2009
Conclusions
• Concept of hierarchy is useful for designing large NoCs
Helps to raise the level of reuse from components to subnets
Building networks with heterogeneous topology, heterogeneous routing,...
Partition a large network for mapping applications, testing, fault tolerance,....
• New Issues and concepts
Deadlock free routing and connectivity
Safe boundary nodes
• Challenges and future work
Pessimistic assumption of interconnecting subnets using only safe boundary nodes• Unsafe nodes can be used in certain cases
Node addressing and router design
Traffic management and congestion control in hierarchical networks
Rickard Holsmark NoC Symposium, San Diego, May 10‐13, 2009 27
top related