Introduction to Parallel Processing Algorithms and Architectures
THE CONTEXT OF PARALLEL PROCESSING The field of digital computer architecture has grown explosively in the past two decades. Through a steady stream of experimental research, tool-building efforts, and theoretical studies, the design of an instruction-set
- PDF / 32,526,481 Bytes
- 512 Pages / 432 x 648 pts Page_size
- 128 Downloads / 584 Views
		    PLENUM SERIES IN COMPUTER SCIENCE Series Editor: Rami G. Melhem University of Pittsburgh Pittsburgh, Pennsylvania
 
 FUNDAMENTALS OF X PROGRAMMING Graphical User Interfaces and Beyond Theo Pavlidis INTRODUCTION TO PARALLEL PROCESSING Algorithms and Architectures Behrooz Parhami
 
 Introduction to Parallel Processing Algorithms and Architectures
 
 Behrooz Parhami University of California at Santa Barbara Santa Barbara, California
 
 KLUWER ACADEMIC PUBLISHERS NEW YORK, BOSTON , DORDRECHT, LONDON , MOSCOW
 
 eBook ISBN
 
 0-306-46964-2
 
 Print ISBN
 
 0-306-45970-1
 
 ©2002 Kluwer Academic Publishers New York, Boston, Dordrecht, London, Moscow
 
 All rights reserved
 
 No part of this eBook may be reproduced or transmitted in any form or by any means, electronic, mechanical, recording, or otherwise, without written consent from the Publisher
 
 Created in the United States of America
 
 Visit Kluwer Online at: and Kluwer's eBookstore at:
 
 http://www.kluweronline.com http://www.ebooks.kluweronline.com
 
 To the four parallel joys in my life,
 
 for their love and support.
 
 Preface THE CONTEXT OF PARALLEL PROCESSING The field of digital computer architecture has grown explosively in the past two decades. Through a steady stream of experimental research, tool-building efforts, and theoretical studies, the design of an instruction-set architecture, once considered an art, has been transformed into one of the most quantitative branches of computer technology. At the same time, better understanding of various forms of concurrency, from standard pipelining to massive parallelism, and invention of architectural structures to support a reasonably efficient and user-friendly programming model for such systems, has allowed hardware performance to continue its exponential growth. This trend is expected to continue in the near future. This explosive growth, linked with the expectation that performance will continue its exponential rise with each new generation of hardware and that (in stark contrast to software) computer hardware will function correctly as soon as it comes off the assembly line, has its down side. It has led to unprecedented hardware complexity and almost intolerable development costs. The challenge facing current and future computer designers is to institute simplicity where we now have complexity; to use fundamental theories being developed in this area to gain performance and ease-of-use benefits from simpler circuits; to understand the interplay between technological capabilities and limitations, on the one hand, and design decisions based on user and application requirements on the other. In computer designers’ quest for user-friendliness, compactness, simplicity, high performance, low cost, and low power, parallel processing plays a key role. High-performance uniprocessors are becoming increasingly complex, expensive, and power-hungry. A basic trade-off thus exists between the use of one or a small number of such complex processors, at one extreme, and a moderate to very large number of simpler processors, at the other. When comb		
 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	