Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/257021300

MULTIPROCESSOR INTERCONNECTION NETWORKS

Conference Paper · September 2013

CITATIONS READS

0 10,287

3 authors, including:

Zvonko R Damnjanovic Veis Serifi


University of Belgrade 68 PUBLICATIONS 112 CITATIONS
39 PUBLICATIONS 37 CITATIONS
SEE PROFILE
SEE PROFILE

All content following this page was uploaded by Zvonko R Damnjanovic on 31 May 2014.

The user has requested enhancement of the downloaded file.


13th International Conference
Research and Development in Mechanical Industry
RaDMI 2013
12-15 September 2013, Kopaonik, Serbia

MULTIPROCESSOR INTERCONNECTION NETWORKS


2 3 3
, , Aleksandar Gojkovi
1
University of Belgrade, Technical faculty in Bor, Bor, SERBIA, E-mail: zdamnjanovic@tf.bor.ac.rs
2
SERBIA, E-mail: serifiveis@yahoo.com
3
Univerzitet UNION, Faculty of Business and Industrial Management, Belgrade, SERBIA,
E-mail: agojkovic@gmail.com

Summary: Multiprocessor system consists of multiple processing units connected via some interconnection
network plus the software needed to make the processing units work together. There are two major factors used
to categorize such systems: the processing units themselves, and the interconnection network that ties them
together. A number of communication styles exist for multiprocessing networks. These can be broadly classified
according to the communication model as shared memory (single address space) versus message
passing(multiple address spaces).

Keywords: interconnection, networking, data processing, architecture.

1. INTRODUCTION

Communication in shared memory systems is performed by writing to and reading from the global
memory, while communication in message passing systems is accomplished via send and receive
commands. In both cases, the interconnection network plays a major role in determining the
communication speed. In this chapter, we introduce the different topologies used for interconnecting
multiple processors and memory modules. Two schemes are introduced, namely static and dynamic
interconnection networks. Static networks form all connections when the system is designed rather
than when the connection is needed. In a static network, messages must be routed along established
links. Dynamic interconnection networks establish connections between two or more nodes on the fly
as messages are routed along the links. The hypercube, mesh, and k-ary n-cube topologies are
introduced as examples for static networks. The bus, crossbar, and multistage inter-connection
topologies are introduced as examples for dynamic interconnection net-works. Our coverage in this
chapter will conclude with a section on performance evaluation and analysis of the different
interconnection networks.

2. INTERCONNECTION NETWORKS TAXONOMY

In this section, we discuss a topology-based taxonomy for interconnection networks (INs). An


interconnection network could be either static or dynamic. Connections in a static network are fixed
links, while connections in a dynamic network re established on the fly as needed. Static networks can
be further classified accord-ing to their interconnection pattern as one-dimension (1D), two-dimension
(2D), or hypercube (HC). Dynamic networks, on the other hand, can be classified based on
interconnection scheme as bus-based versus switch-based. Bus-based networks can further be

652
classified as single bus or multiple buses. Switch-based dynamic net-works can be classified according
to the structure of the interconnection network as single-stage (SS), multistage (MS), or crossbar
networks. Figure 1 illustrate this taxonomy. In the following discussion, we study the different types
of dynamic and static interconnection networks.

Figure 1: Taxonomy of interconnection networks

3. SINGLE BUS BASED INTERCONNECTION NETWORKS

A single bus is considered the simplest way to connect multiprocessor systems. Figure 2 shows an
illustration of a single bus system. In its general form, such a system consists of N processors, each
having its own cache, connected by a shared bus. The use of local caches reduces the processor
memory traffic. All processors communicate with a single shared memory. The typical size of such a
system varies between 2 and 50 processors. The actual size is determined by the traffic per processor
and the bus bandwidth (defined as the maximum rate at which the bus can propagate data once
transmission has started). The single bus network complexity, measured in terms of the number of
buses used, isO(1), while the time complexity, measured in terms of the amount of input to output
delay isO(N). Although simple and easy to expand, single bus multiprocessors are inherently limited
by the bandwidth of the bus and the fact that only one processor can access the bus, and in turn only
one memory access can take place at any given time.

Figure 2: Single bus system

4. MULTIPLE BUS BASED INTERCONNECTION NETWORKS

The use of multiple buses to connect multiple processors is a natural extension to the single shared bus
system. A multiple bus multiprocessor systemuses several parallel buses to interconnect multiple
processors and multiple memory modules. A number of connection schemes are possible in this case.
Among the possibilities are the multiple bus with full bus memory connection (MBFBMC), multiple
bus with single bus memory connection (MBSBMC), multiple bus with partial bus memory
connection (MBPBMC), and multiple bus with class-based memory connection (MBCBMC).
Il
3.

653
The multiple bus with full bus memory connection has all memory modules connected to all buses.
The multiple bus with single bus memory connec-tion has each memory module connected to a
specific bus. The multiple bus with partial bus memory connection has each memory module
connected to a subset of buses. The multiple bus with class-based memory connection has memory
mod-ules grouped into classes whereby each class is connected to a specific subset of buses. A class is
just an arbitrary collection of memory modules.

Figure 3: (a) Multiple bus with full bus memory connection (MBFBMC); (b) multiple bus with single
bus-memory connection (MBSBMC); (c) multiple bus with partial bus memory connection
(MBPBMC); and (d) multiple bus with class-based memory connection (MBCBMC)

5. SWITCH-BASED INTERCONNECTION SINGLE-STAGE NETWORKS

A crossbar network represents the other extreme to the limited single bus network. While the single
bus can provide only a single connection, the crossbar can provide simultaneous connections among

654
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. Consider, for example the 8x8
crossbar network shown in Figure 4. In this case, an SE (also called a cross-point) is pro-vided at each
of the 64 intersection points (shown as small squares in Fig. 4). The figure illustrates the case of
setting the SEs such that simultaneous connections between Pi and M8-i+1 for 1 8 are made. The two
possible settings of an SE in the crossbar (straight and diagonal) are also shown in the figure.

Figure 4: An 8x8 crossbar network (a) straight switch setting; and (b) diagonal switch setting

6. SWITCH-BASED INTERCONNECTION MULTI-STAGE NETWORKS

Multistage interconnection networks (MINs) were introduced as a means to improve some of the
limitations of the single bus system while keeping the cost within an affordable limit. The most
undesirable single bus limitation that MINs is set to improve is the availability of only one single path
between the processors and the memory modules. Such MINs provide a number of simultaneous paths
between the processors and the memory modules. As shown in Figure 5, a general MIN consists of a
number of stages each con-sisting of a set of 2x2 switching elements. Stages are connected to each
other using Inter-stage Connection (ISC) Pattern. These patterns may follow any of the routing
functions such as Shuffle Exchange, Butterfly, Cube, and so on.

Figure 5: Multistage interconnection network

655
Figure 6 shows an example of an 8x8MIN that uses the 2x2 SEs described before. This network is
known in the literature as the Shuffle Exchange network (SEN). The settings of the SEs in the figure
illustrate how a number of paths can be established simultaneously in the network. For example, the
figure shows how three simultaneous paths connecting the 101,
101 011, and 110 010 can be established. It should be noted that the interconnection pattern among
stages follows the shuffle operation.

Figure 6: An example 8x8 Shuffle Exchange network (SEN)

7. CONCLUSION

In this paper, we have overviewed a number of system configurations for multiprocessors. We have
discussed the different topologies used for inter-connecting multiprocessors. Taxonomy for
interconnection networks based on their topology is introduced. Dynamic and static interconnection
schemes have been studied. In the dynamic interconnection scheme, three main mechanisms have
been covered. These are the bus topology, the crossbar topology, and the multistage topology.

REFERENCES

[1] Abraham, S. and Padmanabhan, K. Performance of the direct binary n-cube network for
multiprocessors.IEEE Transactions on Computers, 38 (7), 1000 1011 (1989).
[2] Agrawal, P., Janakiram, V. and Pathak, G. Evaluating the performance of multicomputer
configurations.IEEE Transaction on Computers, 19 (5), 23 27 (1986).
[3] Almasi, G. and Gottlieb, A.Highly Parallel Computing, Benjamin Cummings, 1989.
[4] Al-Tawil, K., Abd-El-Barr, M. and Ashraf, F. A survey and comparison of wormhole routing techniques in
mesh networks. IEEE Network, March/April 1997, 38 45 (1997).
[5] Bhuyan, L., Yang, Q. and Agrawal, D. Performance of multiprocessor interconnection networks. IEEE
Computer, 25 37 (1989).
[6] Chen, W.-T. and Sheu, J.-P. Performance analysis of multiple bus interconnection networks with
hierarchical requesting model. IEEE Transactions on Computers, 40 (7), 834 842, (1991).
[7] Dasgupta, S.Computer Architecture: A Modern Synthesis, Vol. 2: Advanced Topics, John Wiley, 1989.
[8] Decegama, A.The Technology of Parallel Processing: Parallel Processing Architectures and VLSI
Hardware, Vol. 1, Prentice-Hall, 1989.
[9] Dongarra, J.Experimental Parallel Computing Architectures, North-Holland, 1987.
[10] Goyal, A. and Agerwala, T. Performance analysis of future shared storage systems. IBM Journal of
Research and Development, 28 (1), 95 107 (1984).
[11] Juang, J.-Y. and Wah, B. A contention-based bus-control scheme for multiprocessor systems, IEEE
Transactions on Computers, 40 (9), 1046 1053 (1991).
[12] Linder, D. and Harden, J. An adaptive and fault tolerant wormhole routing strategy for k-ary n-cubes. IEEE
Transactions on Computers, 40 (1), 2 12 (1991).

656
[13] Ni, L. and McKinely, P. A survey of wormhole routing techniques in direct networks. IEEE Computer,
February 1993, 62 76 (1993).
[14] Patel, J. Performance of processor memory interconnections for multiprocessor computer systems. IEEE
Transactions, 28 (9), 296 304 (1981).
[15] Reed, D. and Fujimoto, R. Multicomputer Networks: Message-Based Parallel Processing, MIT Press, 1987.
[16] Sima, E., Fountain, T. and Kacsuk, P.Advanced Computer Architectures: A Design Space Approach,
Addison-Wesley, 1996.
[17] Stone, H.High Performance Computer Architecture, 3rd edition, Addison Wesley, 1993.
[18] Wilkinson, B.Computer Architecture: Design and Performance, 2nd edition, Prentice-Hall, 1996.
[19] Yang, Q. and Zaky, S. Communication performance in multiple-bus systems. IEEE Transactions on
Computers, 37 (7), 848 853 (1988).
[20] Youn, H. and Chen, C. A comprehensive performance evaluation of crossbar networks. IEEE Transactions
on Parallel and Distribute Systems, 4 (5), 481 489 (1993).
[21] Zargham, M.Computer Architecture: Single and Parallel Systems, Prentice-Hall, 1996.

657
This document was created with Win2PDF available at http://www.daneprairie.com.
The unregistered version of Win2PDF is for evaluation or non-commercial use only.

View publication stats

You might also like