27-07-2012, 03:15 PM
ADVANCED COMPUTER ARCHITECTURE AND PARALLEL PROCESSING
COMPUTER ARCHITECTURE.pdf (Size: 4.72 MB / Downloads: 56)
INTRODUCTION
Computer architects have always strived to increase the performance of their
computer architectures. High performance may come from fast dense circuitry,
packaging technology, and parallelism. Single-processor supercomputers have
achieved unheard of speeds and have been pushing hardware technology to the physical
limit of chip manufacturing. However, this trend will soon come to an end,
because there are physical and architectural bounds that limit the computational
power that can be achieved with a single-processor system. In this book we will
study advanced computer architectures that utilize parallelism via multiple processing
units.
Parallel processors are computer systems consisting 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. The processing units can communicate and interact with each other
using either shared memory or message passing methods. The interconnection network
for shared memory systems can be classified as bus-based versus switch-based.
In message passing systems, the interconnection network is divided into static and
dynamic. Static connections have a fixed topology that does not change while
programs are running. Dynamic connections create links on the fly as the program
executes.
FOUR DECADES OF COMPUTING
Most computer scientists agree that there have been four distinct paradigms or eras
of computing. These are: batch, time-sharing, desktop, and network. Table 1.1 is
modified from a table proposed by Lawrence Tesler. In this table, major characteristics
of the different computing paradigms are associated with each decade of
computing, starting from 1960.
Batch Era
By 1965 the IBM System/360 mainframe dominated the corporate computer centers.
It was the typical batch processing machine with punched card readers, tapes
and disk drives, but no connection beyond the computer room. This single mainframe
established large centralized computers as the standard form of computing
for decades. The IBM System/360 had an operating system, multiple programming
languages, and 10 megabytes of disk storage. The System/360 filled a room with
metal boxes and people to run them. Its transistor circuits were reasonably fast.
Power users could order magnetic core memories with up to one megabyte of
32-bit words. This machine was large enough to support many programs in
memory at the same time, even though the central processing unit had to switch
from one program to another.
Time-Sharing Era
The mainframes of the batch era were firmly established by the late 1960s when
advances in semiconductor technology made the solid-state memory and integrated
circuit feasible. These advances in hardware technology spawned the minicomputer
era. They were small, fast, and inexpensive enough to be spread throughout the
company at the divisional level.
Desktop Era
Personal computers (PCs), which were introduced in 1977 by Altair, Processor
Technology, North Star, Tandy, Commodore, Apple, and many others, enhanced
the productivity of end-users in numerous departments. Personal computers from
Compaq, Apple, IBM, Dell, and many others soon became pervasive, and changed
the face of computing.
Local area networks (LAN) of powerful personal computers and workstations
began to replace mainframes and minis by 1990. The power of the most capable
big machine could be had in a desktop model for one-tenth of the cost. However,
these individual desktop computers were soon to be connected into larger complexes
of computing by wide area networks (WAN).
Network Era
The fourth era, or network paradigm of computing, is in full swing because of rapid
advances in network technology. Network technology outstripped processor technology
throughout most of the 1990s. This explains the rise of the network paradigm
listed in Table 1.1. The surge of network capacity tipped the balance from a
processor-centric view of computing to a network-centric view.
The 1980s and 1990s witnessed the introduction of many commercial parallel
computers with multiple processors. They can generally be classified into two
main categories: (1) shared memory, and (2) distributed memory systems. The
number of processors in a single machine ranged from several in a shared
memory computer to hundreds of thousands in a massively parallel system.
Examples of parallel computers during this era include Sequent Symmetry, Intel
iPSC, nCUBE, Intel Paragon, Thinking Machines (CM-2, CM-5), MsPar (MP),
Fujitsu (VPP500), and others.
Current Trends
One of the clear trends in computing is the substitution of expensive and specialized
parallel machines by the more cost-effective clusters of workstations. A cluster is a
collection of stand-alone computers connected using some interconnection network.
Additionally, the pervasiveness of the Internet created interest in network computing
and more recently in grid computing.