POLYMORPHIC ON-CHIP NETWORKS Martha Mercaldi Kim, John D. Davis*, - - PowerPoint PPT Presentation

polymorphic on chip networks
SMART_READER_LITE
LIVE PREVIEW

POLYMORPHIC ON-CHIP NETWORKS Martha Mercaldi Kim, John D. Davis*, - - PowerPoint PPT Presentation

POLYMORPHIC ON-CHIP NETWORKS Martha Mercaldi Kim, John D. Davis*, Mark Oskin, Todd Austin** University of Washington *Microsoft Research, Silicon Valley ** University of Michigan On-Chip Network Selection 2 Talk Outline Network-on-chip


slide-1
SLIDE 1

POLYMORPHIC ON-CHIP NETWORKS

Martha Mercaldi Kim, John D. Davis*, Mark Oskin, Todd Austin** University of Washington *Microsoft Research, Silicon Valley ** University of Michigan

slide-2
SLIDE 2

On-Chip Network Selection

2

slide-3
SLIDE 3

Talk Outline

3

  • Network-on-chip Design Space Exploration
  • Networks
  • Workloads
  • Results
  • Polymorphic On-Chip Networks
  • Fabric design
  • Configuring the network
  • Selecting a fabric
  • Evaluation of flexibility
  • Conclusions
  • Future Directions
slide-4
SLIDE 4

On-Chip Network Design Space

4

{ }

16 nodes 64 nodes 256 nodes 1024 nodes

slide-5
SLIDE 5

On-Chip Network Design Space

4

{ 16 nodes, 64 nodes, 256 nodes, 1024 nodes } x

} {

mesh ring fat-tree butterfly flattened- butterfly

slide-6
SLIDE 6

On-Chip Network Design Space

4

{ 16 nodes, 64 nodes, 256 nodes, 1024 nodes } x { mesh, ring, fat-tree, butterfly, flattened-butterfly } x { minimal, oblivious, source-routing } x

slide-7
SLIDE 7

On-Chip Network Design Space

4

{ 16 nodes, 64 nodes, 256 nodes, 1024 nodes } x { mesh, ring, fat-tree, butterfly, flattened-butterfly } x { minimal, oblivious, source-routing } x

{ }

store-and-forward wormhole

slide-8
SLIDE 8

On-Chip Network Design Space

4

{ 16 nodes, 64 nodes, 256 nodes, 1024 nodes } x { mesh, ring, fat-tree, butterfly, flattened-butterfly } x { minimal, oblivious, source-routing } x { wormhole, store-and-forward } x

{ }

32 bits 64 bits 128 bits

slide-9
SLIDE 9

On-Chip Network Design Space

4

{ 16 nodes, 64 nodes, 256 nodes, 1024 nodes } x { mesh, ring, fat-tree, butterfly, flattened-butterfly } x { minimal, oblivious, source-routing } x { wormhole, store-and-forward } x { 16 bits, 64 bits, 128 bits } x

{ }

4 entries 16 entries 64 entries

slide-10
SLIDE 10

On-Chip Network Design Space

4

{ 16 nodes, 64 nodes, 256 nodes, 1024 nodes } x { mesh, ring, fat-tree, butterfly, flattened-butterfly } x { minimal, oblivious, source-routing } x { wormhole, store-and-forward } x { 16 bits, 64 bits, 128 bits } x { 4 entries, 16 entries, 64 entries } = 360 on-chip networks

slide-11
SLIDE 11

On-Chip Network Design Space

4

{ 16 nodes, 64 nodes, 256 nodes, 1024 nodes } x { mesh, ring, fat-tree, butterfly, flattened-butterfly } x { minimal, oblivious, source-routing } x { wormhole, store-and-forward } x { 16 bits, 64 bits, 128 bits } x { 4 entries, 16 entries, 64 entries } = 360 on-chip networks

cycle-level software simulator

slide-12
SLIDE 12

Network Traffic Patterns

5

{ }

(injection rate = 1 packet / cycle)

Uniform Random Random Permutation Nearest Neighbor

slide-13
SLIDE 13

6

Network Measurements: Random Permutation

(Random Permutation)

slide-14
SLIDE 14

6

throughput-sensitive application

Network Measurements: Random Permutation

(Random Permutation)

slide-15
SLIDE 15

6

throughput-sensitive application latency-sensitive application

Network Measurements: Random Permutation

(Random Permutation)

slide-16
SLIDE 16

7

Network Measurements

(Random Permutation) (Uniform Random) (Nearest Neighbor)

slide-17
SLIDE 17

Talk Outline

8

  • Network-on-chip Design Space Exploration
  • Networks
  • Workloads
  • Results
  • Polymorphic On-Chip Networks
  • Fabric design
  • Configuring the network
  • Selecting a fabric
  • Evaluation of flexibility
  • Conclusions
  • Future Directions
slide-18
SLIDE 18

The Intuition...

9

slide-19
SLIDE 19

The Intuition...

9

slide-20
SLIDE 20

The Intuition...

9

mesh

slide-21
SLIDE 21

The Intuition...

9

mesh

slide-22
SLIDE 22

The Intuition...

9

mesh

slide-23
SLIDE 23

The Intuition...

9

ring mesh

slide-24
SLIDE 24

The Intuition...

9

ring mesh fat tree

slide-25
SLIDE 25

Polymorphic On-Chip Network

What it is

  • Sea of structures all networks have in

common

  • Configurable connections between

structures

How it is used

  • Gather structures to arbitrary-degree

switches

  • Connect switches input and output ports

10

slide-26
SLIDE 26
  • Network-on-chip Design Space Exploration
  • Networks
  • Workloads
  • Results
  • Polymorphic On-Chip Networks
  • Fabric design
  • Configuring the network
  • Selecting a fabric
  • Evaluation of flexibility
  • Conclusions
  • Future Directions

Talk Outline

11

slide-27
SLIDE 27

12

1.Switch degree 2.Inter-switch connections 3.Packet width 4.Buffer capacity

Configuring the Network

slide-28
SLIDE 28

12

1.Switch degree 2.Inter-switch connections 3.Packet width 4.Buffer capacity

configurable topology

Configuring the Network

slide-29
SLIDE 29

12

1.Switch degree 2.Inter-switch connections 3.Packet width 4.Buffer capacity

configurable topology configurable resource allocation

Configuring the Network

slide-30
SLIDE 30

13

1.Switch degree

Network Configuration: Switch Degree

slide-31
SLIDE 31

13

1.Switch degree

Network Configuration: Switch Degree

slide-32
SLIDE 32

13

1.Switch degree

Network Configuration: Switch Degree

slide-33
SLIDE 33

13

1.Switch degree

Network Configuration: Switch Degree

slide-34
SLIDE 34

Internal Configuration of a Switch

14

slide-35
SLIDE 35

Internal Configuration of a Switch

14

slide-36
SLIDE 36

Internal Configuration of a Switch

14

slide-37
SLIDE 37

Internal Configuration of a Switch

14

slide-38
SLIDE 38

Internal Configuration of a Switch

14

slide-39
SLIDE 39

Internal Configuration of a Switch

14

slide-40
SLIDE 40

Internal Configuration of a Switch

14

slide-41
SLIDE 41

Internal Configuration of a Switch

14

slide-42
SLIDE 42

15

1.Switch degree 2.Inter-switch connections

Network Configuration: Links

slide-43
SLIDE 43

16

1.Switch degree 2.Inter-switch connections 3.Packet width

Network Configuration: Packet Width

slide-44
SLIDE 44

17

1.Switch degree 2.Inter-switch connections 3.Packet width 4.Buffer capacity

Network Configuration: Queue Capacity

slide-45
SLIDE 45

An Example: Configuration of a Mesh

18

slide-46
SLIDE 46

An Example: Configuration of a Mesh

18

slide-47
SLIDE 47

An Example: Configuration of a Mesh

18

slide-48
SLIDE 48

An Example: Configuration of a Mesh

18

slide-49
SLIDE 49

An Example: Configuration of a Mesh

18

slide-50
SLIDE 50

An Example: Configuration of a Mesh

18

slide-51
SLIDE 51

Talk Outline

19

  • Network-on-chip Design Space Exploration
  • Networks
  • Workloads
  • Results
  • Polymorphic On-Chip Networks
  • Fabric design
  • Configuring the network
  • Selecting a fabric
  • Evaluation of flexibility
  • Conclusions
  • Future Directions
slide-52
SLIDE 52

Polymorphic Fabric Parameter Space

20

queue width and depth resources per cluster

  • no. vertical

routing wires

  • no. horizontal

routing resources

slide-53
SLIDE 53

21

W = {32, 64, 128} D = {4, 16, 64} N = {2, 4, 8, 16} H = {N, 2N} V = {N, 2N}

Polymorphic Fabric Parameter Space

slide-54
SLIDE 54

Polymorphic Fabric Area Overhead

22

ASIC implementation Polymorphic implementation

slide-55
SLIDE 55

Polymorphic Fabric Area Overhead

22

Area as ASIC

ASIC implementation Polymorphic implementation

slide-56
SLIDE 56

Polymorphic Fabric Area Overhead

22

Area as ASIC Area in Polymorphic Fabric

ASIC implementation Polymorphic implementation

slide-57
SLIDE 57

Polymorphic Fabric Area Overhead

22

Area as ASIC Area in Polymorphic Fabric Area Overhead =

ASIC implementation Polymorphic implementation

slide-58
SLIDE 58

Polymorphic Fabric Area Overhead

22

Area as ASIC Area in Polymorphic Fabric Area Overhead =

ASIC implementation Polymorphic implementation

slide-59
SLIDE 59

Polymorphic Fabric Area Overhead

22

Area as ASIC Area in Polymorphic Fabric Area Overhead =

ASIC implementation Polymorphic implementation

slide-60
SLIDE 60

Area Overhead of Polymorphic Fabrics

23

144 polymorphic fabrics Area efficient networks have small queues and generous routing resources

slide-61
SLIDE 61

24

W={32, 64, 128} D = {4, 16, 64} N = {2, 4, 8, 16} H = {N, 2N} V = {N, 2N}

Polymorphic Fabric Parameter Space

slide-62
SLIDE 62

Talk Outline

25

  • Network-on-chip Design Space Exploration
  • Networks
  • Workloads
  • Results
  • Polymorphic On-Chip Networks
  • Fabric design
  • Configuring the network
  • Selecting a fabric
  • Evaluation of flexibility
  • Conclusions
  • Future Directions
slide-63
SLIDE 63

Network Selection Under Area Budget

26

Of networks smaller than 22 mm , 26 are pareto optimal.

2

slide-64
SLIDE 64

Network Selection Under Area Budget

27

24 of the 26 optimal networks will fit in 22 mm of polymorphic fabric.

2

slide-65
SLIDE 65

Network Selection Under Area Budget

28

Polymorphic coverage is strong for all but the tightest area budgets.

slide-66
SLIDE 66

Conclusion

29

Widely varying on-chip communication patterns can take advantage of a flexible on-chip network. Polymorphic fabric is a coarse grained reconfigurable circuit designed to implement packet-switched networks on chip. Subject to area budget, polymorphic fabric usually offers broad choice of network. Should build polymorphic network unless

  • 1. Area budget highly constrained
  • 2. Application and/or traffic not expected to vary
slide-67
SLIDE 67

Some Future Directions

30

  • 1. Hardware implementation
  • 2. Uses beyond application performance

(e.g., on-chip isolation)

  • 3. Incorporation of advanced on-chip network innovations
  • 4. Reconfiguration policy
slide-68
SLIDE 68

THANK YOU