|
Parallelism, the capability of a computer to execute operations concurrently, has been a constant throughout the
history of computing. It impacts hardware, software, theory, and applications. The fastest machines of the past few
decades, the supercomputers, owe their performance advantage to parallelism. Today, physical limitations have
forced the adoption of parallelism as the preeminent strategy of computer manufacturers for continued perfor-
mance gains of all classes of machines, from embedded and mobile systems to the most powerful servers. Parallelism
has been used to simplify the programming of certain applications which react to or simulate the parallelism of the
natural world. At the same time, parallelism complicates programming when the objective is to take advantage of
the existence of multiple hardware components to improve performance. Formal methods are necessary to study
the correctness of parallel algorithms and implementations and to analyze their performance on different classes of
real and theoretical systems. Finally, parallelism is crucial for many applications in the sciences, engineering, and
interactive services such as search engines.
Because of its importance and the challenging problems it has engendered, there have been numerous research
and development projects during the past half century. This Encyclopedia is our attempt to collect accurate and clear
descriptions of the most important of those projects. Although not exhaustive, with over 300 entries the Encyclo-
pedia covers most of the topics that we identified at the outset as important for a work of this nature. Entries include
many of the best known projects and span all the important dimensions of parallel computing including machine
design, software, programming languages, algorithms, theoretical issues, and applications.
This Encyclopedia is the result of the work of many, whose dedication made it possible. The 25 Editorial Board
Members created the list of entries, did most of the reviewing, and suggested authors for the entries. Colin Robert-
son, the Managing Editor, Jennifer Carlson, Springers Reference Development editor, and Editorial Assistants Julia
Koerting and Simone Tavenrath, worked for 3 long years coordinating the recruiting of authors and the review and
submission process. Melissa Fearon, Springer's Senior Editor, helped immensely with the coordination of authors
and Editorial Board Members, especially during the difficult last few months. The nearly 400 authors wrote crisp,
informative entries. They include experts in all major areas, come from many different nations, and span several
generations. In many cases, the author is the lead designer or researcher responsible for the contribution reported
in the entry. It was a great pleasure for me to be part of this project. The enthusiasm of everybody involved made
this a joyful enterprise. 1 believe we have put together a meaningful snapshot of parallel computing in the last 50
years and presented a believable glimpse of the future. I hope the reader agrees with me on this and finds the entries,
as I did, valuable contributions to the literature.] |