32
MULTIPROCESSORS INTERCONNECTION NETWORKS

Multiprocessors Interconnection Networks

Embed Size (px)

Citation preview

Page 1: Multiprocessors Interconnection Networks

MULTIPROCESSORS INTERCONNECTION

NETWORKS

Page 2: Multiprocessors Interconnection Networks

INTRODUCTION

Page 3: Multiprocessors Interconnection Networks

INTERCONNECTION NETWORKS TAXONOMY

Page 4: Multiprocessors Interconnection Networks

BUS-BASEDDYNAMICINTERCONNECTION NETWORKS

Page 5: Multiprocessors Interconnection Networks

Single Bus System

Considered as the simplest way to connect multiprocessor systems

A system consists of N processors, each having its own cache, connected by a shared bus

Page 6: Multiprocessors Interconnection Networks

Multiple Bus Systems A multiple bus multiprocessor system uses several parallel

buses to interconnect multiple processors and multiple memory modules.

Connection schemes:MBFBMCMBSBMCMBPBMCMBCBMC

Page 7: Multiprocessors Interconnection Networks

• Multiple Bus with Full Bus – Memory Connection (MBFBMC)

Has all memory modules connected to all buses

Multiple Bus Systems

Page 8: Multiprocessors Interconnection Networks

Has each memory module connected to a specific bus

• Multiple Bus with Single Bus – Memory Connection (MBSBMC)

Multiple Bus Systems

Page 9: Multiprocessors Interconnection Networks

• Multiple Bus with Partial Bus – Memory Connection (MBPBMC)

Has each memory module connected to a subset of buses

Multiple Bus Systems

Page 10: Multiprocessors Interconnection Networks

• Multiple Bus with Class-based Memory Connection (MBCBMC)

Has memory modules grouped into classes whereby each class is connected to a specific subset of buses

Multiple Bus Systems

Page 11: Multiprocessors Interconnection Networks

Bus arbitration is required in order to resolve the bus contention that takes place when more than one processor competes to access the bus.

The process of passing bus mastership from one processor to another is called handshaking and requires the use of two control signals:Bus requestBus grant

Bus Synchronization

Page 12: Multiprocessors Interconnection Networks

A third signal, called bus busy, is usually used to indicate whether or not the bus is currently being used.

In deciding which processor gains control of the bus, the bus arbitration logic uses a predefined priority scheme. Among the priority schemes used are: Random priority Simple rotating priority Equal priority Least recently used priority (LRU)

Bus Synchronization

Page 13: Multiprocessors Interconnection Networks

SWITCH-BASEDINTERCONNECTION NETWORKS

Page 14: Multiprocessors Interconnection Networks

The crossbar can provide simultaneous connections among all its inputs and all its outputs.

The crossbar contains a switching element (SE) at the intersection of any two lines extended horizontally or vertically inside the switch.

Straight and Diagonal Switch Setting

Crossbar Networks

Page 15: Multiprocessors Interconnection Networks

In this case, a single stage of switching elements (SEs) exists between the inputs and the outputs of the network. The simplest switching element that can be used is the 2 x 2 SE. The four possible settings that an SE can assume are:StraightExchangeUpper-broadcastLower-broadcast

Single-Stage Networks

Page 16: Multiprocessors Interconnection Networks

Switch-based InterconnectionNetworks

In this type of network, connections among processors and memory modules are made using simple switches.

Three basic interconnection topologies exist:CrossbarSingle-stageMultistage

Page 17: Multiprocessors Interconnection Networks

Blockage in Multistage Interconnection Networks

A number of classification criteria exist for MINs. Among these criteria is the criterion of blockage.

According to this criterion, MINs are classified as follows:Blocking NetworksRearrangeable NetworksNon-blocking Networks

Page 18: Multiprocessors Interconnection Networks

Blocking Networks

Blocking networks possess the property that in the presence of a currently established interconnection between two arbitrary unused input and output may or may not be possible.

Examples of blocking networks include:OmegaBanyanShuffle-exchangeBaseline

Page 19: Multiprocessors Interconnection Networks

Rearrangeable networks are characterized by the property that it is always possible to rearrange already established connections in order to make allowance for other connections to be established simultaneously.

The well-known example of this network is the Benes.

Rearrangeable Networks

Page 20: Multiprocessors Interconnection Networks

Non-blocking networks are characterized by the property that in the presence of a currently established connection between any pair of input/output, it will always be possible to establish a connection between any arbitrary unused pair of input/output.

The Clos is a well-known example of non-blocking networks.

Non-blocking Networks

Page 21: Multiprocessors Interconnection Networks

STATICINTERCONNECTION NETWORKS

Page 22: Multiprocessors Interconnection Networks

Static Interconnection Networks

Static (fixed) interconnection networks are characterized by having fixed paths, unidirectional or bidirectional, between processors.

Two types:Completely Connected Networks (CCNs)Limited Connection Networks (LCNs)

Page 23: Multiprocessors Interconnection Networks

Completely Connected Networks (CNNs)

Each node is connected to all other nodes in the network

Guarantee fast delivery of messages from any source node to any destination node

Routing of messages between nodes becomes a straightforward task

Page 24: Multiprocessors Interconnection Networks

Limited Connection Networks(LCNs) In LCNs, communications between some nodes have to be

routed through other nodes in the network.

Two other conditions seem to have been imposed by the existence of limited interconnectivity in LCNs include:the need for a pattern of interconnection among nodesthe need for a mechanism for routing messages around

the network until they reach their destination

Page 25: Multiprocessors Interconnection Networks

Limited Connection Networks(LCNs) Regular Interconnection

Patterns for LCNs:

a) Linear array Network

b) Ring Network

c) Two-dimensional Array Network

d) Tree Network

e) Three-cube Network

Page 26: Multiprocessors Interconnection Networks

Cube-Connected Networks

In a cube-based multiprocessor system, processing elements are positioned at the vertices of the graph. Edges of the graph represent the point-to-point communication links between processors.

Page 27: Multiprocessors Interconnection Networks

Mesh-Connected Networks

Page 28: Multiprocessors Interconnection Networks

ANALYSIS AND PERFORMANCEMETRICS

Page 29: Multiprocessors Interconnection Networks

Performance Comparison ofDynamic Networks

N represents the number of inputs (outputs) while m represents the number of buses.

Page 30: Multiprocessors Interconnection Networks

The cost of the crossbar system can be measured in terms of the number of switching elements (cross points) required inside the crossbar.For an N x N crossbar, the rate of cost is given by O(N2).

Dynamic Networks – The Crossbar

The crossbar possesses a constant rate of delay given by O(1).

It is a non-blocking network.

It can be affected by a single-point failure.

Page 31: Multiprocessors Interconnection Networks

Dynamic Networks – Multiple Bus

The cost of a multiple-bus system is measured in terms of the number of buses used, O(B).

The multiple bus possesses an O(B x N) rate of delay growth.

It is a blocking network.

Multiple bus multiprocessor organization offers the desirable feature of being highly reliable and fault-tolerant.

Page 32: Multiprocessors Interconnection Networks

The network cost, measured in terms of the total number of switching elements (SEs), is O(N x log2 N).

The time complexity, measured by the number of SEs along the path from input to output, is O(log2 N).

It is a blocking network.

MINs are vulnerable to single-point failure. They are characterized as being 0-fault tolerant.

Dynamic Networks –

Multistage Interconnection Networks