floorplanning and topology generation for application ...switch communication graph(scg) path...

34
Outline Floorplanning and Topology Generation for Application-Specific Network-on-Chip Bei Yu 1 Sheqin Dong 1 Song Chen 2 Satoshi GOTO 2 1 Department of Computer Science & Technology Tsinghua University, Beijing, China 2 Graduate School of IPS Waseda University, Kitakyushu, Japan 2010.01.20 Bei Yu Floorplanning & Topology Generation for NoCs

Upload: others

Post on 01-Oct-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

Outline

Floorplanning and Topology Generation forApplication-Specific Network-on-Chip

Bei Yu1 Sheqin Dong1 Song Chen2 Satoshi GOTO2

1Department of Computer Science & TechnologyTsinghua University, Beijing, China

2Graduate School of IPSWaseda University, Kitakyushu, Japan

2010.01.20

Bei Yu Floorplanning & Topology Generation for NoCs

Page 2: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

Outline

Outline

1 IntroductionPrevious WorksProblem Formulation

2 Topology Synthesis AlgorithmPartition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

3 Experimental Results

Bei Yu Floorplanning & Topology Generation for NoCs

Page 3: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Previous WorksProblem Formulation

Network-on-Chip

Solution to global communication challengesAlternative to Bus communication architectures

Better modularityLower power consumptionScalability

Regular NoCs and Application-Specific NoCsNetwork components:

SwitchNetwork Interface (NI)

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

S=Switch

DSP

NI

RISCCPU

NISRAM

NI

calcNI

samp

NI

MediaCPU

NI

SDRAMNI

VU SRAM

S

S

NINI

S

Bei Yu Floorplanning & Topology Generation for NoCs

Page 4: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Previous WorksProblem Formulation

Regular or Application-Specific Topology

Regular TopologyTask Scheduling and Mapping problem

Application-Specific Topology?1 Irregular core sizes2 Different communication flow requirements3 Reducing energy by reducing hop count and switch count4 Possibly higher performance

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

S=Switch

DSP

NI

RISCCPU

NISRAM

NI

calcNI

samp

NI

MediaCPU

NI

SDRAMNI

VU SRAM

S

S

NINI

S

Bei Yu Floorplanning & Topology Generation for NoCs

Page 5: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Previous WorksProblem Formulation

Regular or Application-Specific Topology

Regular TopologyTask Scheduling and Mapping problem

Application-Specific Topology?1 Irregular core sizes2 Different communication flow requirements3 Reducing energy by reducing hop count and switch count4 Possibly higher performance

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

Node

SNI

S=Switch

DSP

NI

RISCCPU

NISRAM

NI

calcNI

samp

NI

MediaCPU

NI

SDRAMNI

VU SRAM

S

S

NINI

S

Focus on Application-Specific Topology Generation!

Bei Yu Floorplanning & Topology Generation for NoCs

Page 6: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Previous WorksProblem Formulation

Previous Works

–K.Srinivasan et al. TVLSI 06:

Used fixed floorplan as optimization starting point

Switch at corners of cores

–Murali et al. ICCAD06:

Two steps topology generation procedure using min-cut partitioner

Greedy based path allocation assignment

–Chan & Parameswaran, ASPDAC08:

Iterative refinement strategy

supports both packet-switched networks and point to point connections

–Murali et al. ASPDAC09:

Synthesis approach for 3D NoC

LP based switch position computation

Bei Yu Floorplanning & Topology Generation for NoCs

Page 7: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Previous WorksProblem Formulation

Motivations

In previous works:Partition w/o physical informationFail to consider area consumption of NI and Switch

In our works:Integrate partition into floorplanning phaseConsider Switches and NI area consumptionMin-Cost-Flow algorithm to insert NIEffective paths allocation to minimize power consumption

Bei Yu Floorplanning & Topology Generation for NoCs

Page 8: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Previous WorksProblem Formulation

Problem Formulation

Input:a set of n cores C = {c1, c2, . . . , cn}.switches number m.

core communication graph(CCG).

network components power model.

Output: an NoC topology satisfying

minimize area consumption.

minimize the communication energy.

v1

v2

v3

v4

v5

v6

CCG: Core Communication Graph.

Bei Yu Floorplanning & Topology Generation for NoCs

Page 9: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Previous WorksProblem Formulation

Synthesis Algorithm

Obtain min-cut partitions of CCGCommunication RequirementDistances between cores

Cores in a cluster share a switch

Switch Communication Graph(SCG)

Path Allocation on SCGMinimize power consumptionMinimize hop-countSatisfy width constraints

v1

v2

v3

v4

v5

v6

s1 s2

s3

s1

s2

s3

SCG

Bei Yu Floorplanning & Topology Generation for NoCs

Page 10: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Overview of Algorithm

Path Allocation

Floorplanning

Post-Floorplanning

CoreSize

CCGGenerate new floorplan

Partition

Stop?No

Switches Insertion

Network Interfaces Insertion

Optimized Floorplan

Yes

Generate floorplan with partitions.

c1 c2

c3

c4

Bei Yu Floorplanning & Topology Generation for NoCs

Page 11: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Overview of Algorithm

Path Allocation

Floorplanning

Post-Floorplanning

CoreSize

CCGGenerate new floorplan

Partition

Stop?No

Switches Insertion

Network Interfaces Insertion

Optimized Floorplan

Yes

Insert Switches.

c1 c2

c3

c4s1

s2

Bei Yu Floorplanning & Topology Generation for NoCs

Page 12: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Overview of Algorithm

Path Allocation

Floorplanning

Post-Floorplanning

CoreSize

CCGGenerate new floorplan

Partition

Stop?No

Switches Insertion

Network Interfaces Insertion

Optimized Floorplan

Yes

Insert NI with Min-Cost Flow Algorithm.

c1 c2

c3

c4s1

s2NI NI

NINI

Bei Yu Floorplanning & Topology Generation for NoCs

Page 13: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Overview of Algorithm

Path Allocation

Floorplanning

Post-Floorplanning

CoreSize

CCGGenerate new floorplan

Partition

Stop?No

Switches Insertion

Network Interfaces Insertion

Optimized Floorplan

Yes

Dynamic Programming basedPath Allocation.

c1 c2

c3

c4s1

s2NI NI

NINI

Bei Yu Floorplanning & Topology Generation for NoCs

Page 14: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Partition Driven Floorplanning

Traditionally, partition before floorplanning(-)Lose physical information

In our workIntegrate partition into floorplanningCores with larger communication incline to one clusterMinimize interconnect power consumption

Define new edge weight w ′ij in CCG:

w ′ij = αw ×

wij

max w+ αd ×

mean disdisij

Using CBL1 as topological representationRecord white space information

1X. Hong et al, IEEE Transaction on CAS 2004.Bei Yu Floorplanning & Topology Generation for NoCs

Page 15: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Switches Insertion

After floorplanning stageEach cluster has a minimal bounding box.

Heuristical method to insert switches:

1 Switch initially in the center ofbounding box.

2 Partition the white space into grids.3 Sort switches.4 Insert switches in grids one by one.

In cluster pk , cost of insert switch k to grid g:

Costgk =∑

i,j

wij × (disgi + disgj),∀eij ∈ E

Choose free grid with smallest Cost .

c1 c2

c3

c4

Bei Yu Floorplanning & Topology Generation for NoCs

Page 16: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Switches Insertion

After floorplanning stageEach cluster has a minimal bounding box.

Heuristical method to insert switches:

1 Switch initially in the center ofbounding box.

2 Partition the white space into grids.3 Sort switches.4 Insert switches in grids one by one.

In cluster pk , cost of insert switch k to grid g:

Costgk =∑

i,j

wij × (disgi + disgj),∀eij ∈ E

Choose free grid with smallest Cost .

c1 c2

c3

c4s2s1

Bei Yu Floorplanning & Topology Generation for NoCs

Page 17: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Switches Insertion

After floorplanning stageEach cluster has a minimal bounding box.

Heuristical method to insert switches:

1 Switch initially in the center ofbounding box.

2 Partition the white space into grids.3 Sort switches.4 Insert switches in grids one by one.

In cluster pk , cost of insert switch k to grid g:

Costgk =∑

i,j

wij × (disgi + disgj),∀eij ∈ E

Choose free grid with smallest Cost .

c1 c2

c3

c41 2 3 4

896107

5

s2s1

Bei Yu Floorplanning & Topology Generation for NoCs

Page 18: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Switches Insertion

After floorplanning stageEach cluster has a minimal bounding box.

Heuristical method to insert switches:

1 Switch initially in the center ofbounding box.

2 Partition the white space into grids.3 Sort switches.4 Insert switches in grids one by one.

In cluster pk , cost of insert switch k to grid g:

Costgk =∑

i,j

wij × (disgi + disgj),∀eij ∈ E

Choose free grid with smallest Cost .

c1 c2

c3

c41 2 3 4

896107

5

s2s1

Bei Yu Floorplanning & Topology Generation for NoCs

Page 19: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Switches Insertion

After floorplanning stageEach cluster has a minimal bounding box.

Heuristical method to insert switches:

1 Switch initially in the center ofbounding box.

2 Partition the white space into grids.3 Sort switches.4 Insert switches in grids one by one.

In cluster pk , cost of insert switch k to grid g:

Costgk =∑

i,j

wij × (disgi + disgj),∀eij ∈ E

Choose free grid with smallest Cost .

c1 c2

c3

c41 2 3 4

896107

5

s1s2

Bei Yu Floorplanning & Topology Generation for NoCs

Page 20: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Network Interfaces Insertion

For each core, construct l-bounding box

Insert NI in l-bounding box

Construct network graph G∗ = (V ∗, E∗):

Network Graph

V ∗ = {s, t} ∪ NI ∪Grids.

E∗ = {(s, nik )|nik ∈ NI} ∪ {(nik , gj)|∀gj ∈CGk} ∪ {(gj , t)|gj ∈ Grids}.Capacities:C(s, nik ) = 1, C(nik , gj) = 1, C(rj , t) = 1.

Cost:F (s, nik ) = 0, F (gj , t) = 0; F (nik , gj) = Fkj .

Min-cost flow algorithm, polynomial time.

c1 c2

c3

c41 2 3 4

896107

5

s1s2

l-box of c3

s t

ni1

ni2

ni3

ni4

1

2

3

6

7

8

9

10

Bei Yu Floorplanning & Topology Generation for NoCs

Page 21: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Network Interfaces Insertion

For each core, construct l-bounding box

Insert NI in l-bounding box

Construct network graph G∗ = (V ∗, E∗):

Network Graph

V ∗ = {s, t} ∪ NI ∪Grids.

E∗ = {(s, nik )|nik ∈ NI} ∪ {(nik , gj)|∀gj ∈CGk} ∪ {(gj , t)|gj ∈ Grids}.Capacities:C(s, nik ) = 1, C(nik , gj) = 1, C(rj , t) = 1.

Cost:F (s, nik ) = 0, F (gj , t) = 0; F (nik , gj) = Fkj .

Min-cost flow algorithm, polynomial time.

c1 c2

c3

c41 2 3 4

896107

5

s1s2NI2NI4NI3

NI1

s t

ni1

ni2

ni3

ni4

1

2

3

6

7

8

9

10

Bei Yu Floorplanning & Topology Generation for NoCs

Page 22: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Energy Aware Path Allocation

Solve once is enough? No!Consider Power Consumption.Path with minimal powerconsumption may change.

Simple example:Two flows: (s1→ s3), (s2→ s3).Solve (s1→ s3) first.First,

shortest path from s2 to s3 iss1→ s3.

After flow (s1→ s3):shortest path from s2 to s3 iss1→ s4→ s3.

s2

s3

s4s1

tij:power from i to jt23=2

t12=2t24=1

t34=2

Bei Yu Floorplanning & Topology Generation for NoCs

Page 23: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Energy Aware Path Allocation

Solve once is enough? No!Consider Power Consumption.Path with minimal powerconsumption may change.

Simple example:Two flows: (s1→ s3), (s2→ s3).Solve (s1→ s3) first.First,

shortest path from s2 to s3 iss1→ s3.

After flow (s1→ s3):shortest path from s2 to s3 iss1→ s4→ s3.

s2

s3

s4s1

t12=2->4

t23=2->4

t24=1t34=2

tij:power from i to j

Bei Yu Floorplanning & Topology Generation for NoCs

Page 24: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Energy Aware Path Allocation

Solve once is enough? No!Consider Power Consumption.Path with minimal powerconsumption may change.

Simple example:Two flows: (s1→ s3), (s2→ s3).Solve (s1→ s3) first.First,

shortest path from s2 to s3 iss1→ s3.

After flow (s1→ s3):shortest path from s2 to s3 iss1→ s4→ s3.

s2

s3

s4s1

t24=1t34=2

tij:power from i to j ?

t12=2->4

t23=2->4

s2

s3

s4s1

1->32->4t12=2->4

t23=2->4

Bei Yu Floorplanning & Topology Generation for NoCs

Page 25: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Energy Aware Path Allocation

disn(i , d): distance from node i to d

dise(i , j , d): distance i to d using eij

DP based method to find paths:

dise(i , j , d) =

{tid , j = dtij + disn(j , d), otherwise

disn(i , d) =

{0, i = dmink dise(i , k , d), otherwise

run time is bounded by O(|V | · |E |)if dise(i , j , d) = disn(i , d), then path(i , d) = j .

1

2

3

4

5

6

7

2

3

7

4

2

5

25

3

22

6

4

1

2

3

4

5

6

7

8

10

9

6

9

7

67

7

22

8

4

dise(i,j,7)

Find initial paths.

Label dise(i , j , 7).

Bei Yu Floorplanning & Topology Generation for NoCs

Page 26: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Partition Driven FloorplanningSwitches and Network Interfaces InsertionEnergy Aware Path Allocation

Update Paths

1: //Update when tij change to (tij + ∆t);2: tij ← (tij + ∆t);3: queue q.push(eij );4: while q is not empty do5: eab ← q.pop();6: dise(a, b, d)← tab + disn(b, d);7: if PATH[a][d ] = b then8: Find k ∈ Post(a)a to minimize

disn(k , d) + tak ;9: disn(a, d)← disn(k , d) + tak ;

10: path(a, d)← k ;11: q.push(epa), ∀p ∈ Pre(a)b;12: end if13: end while

aPost(a) = {vk |∀vk ∈ V & eak ∈ E}bPre(a) = {vk |∀vk ∈ V & eka ∈ E}

1

2

3

4

5

6

72

2

4

2->10

7

15

1615

910

9

86

1

2

3

4

5

6

7

8

10

9

6

9

7

67

7

22->10

8

4

dise(i,j,7)

Remove path 3→ 5.Add path 3→ 6.

Bei Yu Floorplanning & Topology Generation for NoCs

Page 27: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Experimental Setup

–Power Model:Switch power model

ports 2 3 4 5 6 7 8(pJ/bit) 0.22 0.33 0.44 0.55 0.66 0.78 0.90

Interconnect power modellength(mm) 1 4 8 12 16

(pJ/bit) 0.6 2.4 4.8 7.2 9.6

–Benchmark:Bertozzi et al. (G1, G2, G3)

Srinivasan et al. TVLSI06 (G4,G5, G6)

Murali et al. ASPDAC09 (G7)

Benchmark V# E#G1 MPEG4 12 13G2 MWD 12 12G3 VOPD 12 14G4 263decmp3dec 14 15G5 263encmp3dec 12 12G6 mp3encmp3dec 13 13G7 D 38 tvopd 38 47

Bei Yu Floorplanning & Topology Generation for NoCs

Page 28: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Experimental Results

The Consumption Between the PBF and the PDF:Part# Power(mW) Hops W.S(%) Time(s)

PBF ours PBF ours PBF ours oursG1 3 25.9 16.0 1.17 1.0 12.25 16.43 13.86

4 24.3 14.1 1.25 1.041 7.63 16.43 15.07G2 3 3.05 3.08 1.33 1.33 12.22 11.82 13.37

4 3.19 3.02 1.25 1.25 12.22 12.22 15.46G3 3 7.43 6.12 1.0 1.0 12.16 13.54 14.54

4 7.62 6.59 1.0 1.15 12.17 13.85 17.32G4 3 4.96 3.92 1.0 1.0 14.24 13.44 23.78

4 7.86 4.35 1.25 1.0 13.59 14.50 24.96G5 3 24.7 19.2 1.0 1.0 6.06 8.82 13.19

4 58.6 19.2 1.0 1.0 9.58 9.58 15.42G6 3 8.4 4.4 1.0 1.0 15.23 17.60 20.29

4 11.2 8.6 1.0 1.0 15.23 15.24 21.0G7 3 12.7 8.2 1.33 1.33 15.1 24.5 92.7

4 12.3 6.8 1.44 1.4 14.7 22.60 104.0Avg - 15.16 8.83 1.14 1.11 12.31 13.92 28.93Diff - - -41.8% - -2.6% - - -

PBF: similar to Murali ICCAD06, Partition Before Floorplanning.PDF: our methods, Partition Driven Floorplanning.

Can save 41.8% of power and 2.6% of hops number.

Bei Yu Floorplanning & Topology Generation for NoCs

Page 29: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Experimental Results

The Consumption Between the PBF and the PDF:Part# Power(mW) Hops W.S(%) Time(s)

PBF ours PBF ours PBF ours oursG1 3 25.9 16.0 1.17 1.0 12.25 16.43 13.86

4 24.3 14.1 1.25 1.041 7.63 16.43 15.07G2 3 3.05 3.08 1.33 1.33 12.22 11.82 13.37

4 3.19 3.02 1.25 1.25 12.22 12.22 15.46G3 3 7.43 6.12 1.0 1.0 12.16 13.54 14.54

4 7.62 6.59 1.0 1.15 12.17 13.85 17.32G4 3 4.96 3.92 1.0 1.0 14.24 13.44 23.78

4 7.86 4.35 1.25 1.0 13.59 14.50 24.96G5 3 24.7 19.2 1.0 1.0 6.06 8.82 13.19

4 58.6 19.2 1.0 1.0 9.58 9.58 15.42G6 3 8.4 4.4 1.0 1.0 15.23 17.60 20.29

4 11.2 8.6 1.0 1.0 15.23 15.24 21.0G7 3 12.7 8.2 1.33 1.33 15.1 24.5 92.7

4 12.3 6.8 1.44 1.4 14.7 22.60 104.0Avg - 15.16 8.83 1.14 1.11 12.31 13.92 28.93Diff - - -41.8% - -2.6% - - -

PBF: similar to Murali ICCAD06, Partition Before Floorplanning.PDF: our methods, Partition Driven Floorplanning.

Can save 41.8% of power and 2.6% of hops number.

Bei Yu Floorplanning & Topology Generation for NoCs

Page 30: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Experimental Results(cont.)

263encmp3dec (4 clusters):

0

2

193

1

4

38001

38001

5

6

725

46733

82083

38016

3

37958

11

10

9

10

4060

500

−20 0 20 40 60 80 100 120 140 1600

20

40

60

80

100

120

140

160

0

1

2

3

4

5

6

7

8

9

10

11

mp3encmp3dec (3 clusters):

02 4060

1

4

1000

2083

6

825 92083

3 12

10

10

11

4060

500

500

1000

5870

7

150 180

0 20 40 60 80 100 120 140 160 180

0

20

40

60

80

100

120

01

2

3

45

6

7

8

9 10 11

12

Bei Yu Floorplanning & Topology Generation for NoCs

Page 31: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Experimental Results(cont.)

263encmp3dec (4 clusters):

0

2

193

1

4

38001

38001

5

6

725

46733

82083

38016

3

37958

11

10

9

10

4060

500

−20 0 20 40 60 80 100 120 140 1600

20

40

60

80

100

120

140

160

0

1

2

3

4

5

6

7

8

9

10

11

highly communicating coresplaces close to each other.

mp3encmp3dec (3 clusters):

02 4060

1

4

1000

2083

6

825 92083

3 12

10

10

11

4060

500

500

1000

5870

7

150 180

0 20 40 60 80 100 120 140 160 180

0

20

40

60

80

100

120

01

2

3

45

6

7

8

9 10 11

12

Bei Yu Floorplanning & Topology Generation for NoCs

Page 32: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Experimental Results(cont.)

Effectiveness of Path Update Algorithm:

V# Flow# Update# Run Time(s) DiffDSP ours

t 01 20 34 20 0.024 0.008 -66.7%t 02 100 130 30 0.604 0.016 -97.4%t 03 300 457 50 20.35 0.08 -99.6%

DSP: re-solves all distances by Dijkstra’s Shortest Path Algorithm.Ours: effective path update algorithm.

Larger graph, more effective.

Bei Yu Floorplanning & Topology Generation for NoCs

Page 33: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Conclusion

In our works:Intgrate partition into floorplanning phaseConsider Switches and NI area consumptionMin-Cost-Flow algorithm to insert NIEffective paths allocation to minimize power consumption

Bei Yu Floorplanning & Topology Generation for NoCs

Page 34: Floorplanning and Topology Generation for Application ...Switch Communication Graph(SCG) Path Allocation on SCG Minimize power consumption Minimize hop-count Satisfy width constraints

IntroductionAlgorithm

Experimental Results

Thank You !

Bei Yu Floorplanning & Topology Generation for NoCs