28
HiRA: A Methodology for Deadlock Free Routing in Hierarchical Networks on Chip Rickard Holsmark 1 , Maurizio Palesi 2 , Shashi Kumar 1 and Andres Mejia 3 NoC Symposium San Diego, May 1013, 2009 1 Jönköping University, Sweden 2 University of Catania, Italy 3 Technical University of Valencia, Spain

HiRA: A Methodology for Deadlock Free in Hierarchical on …circuit.ucsd.edu/~nocs2009/talks/NoCSymp_Rickard_090522.pdf · HiRA: A Methodology for Deadlock Free ... The Road to Network

  • Upload
    dophuc

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

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

Awake?Thank you for Listening!

Questions?

Rickard Holsmark 28NoC Symposium, San Diego, May 10‐13, 2009