This book describes the activities of the Caltech Concurrent Computation
Program (CP). This was a seven-year project (1983-1990), focussed
on the question, ``Can parallel computers be used effectively for large
scale scientific computation?'' The title of the book, ``Parallel
Computing Works,'' reveals our belief that we answered the question in
the affirmative, by implementing numerous scientific applications on
real parallel computers and doing computations that produced new
scientific results. In the process of doing so, C
P helped design
and build several new computers, designed and implemented basic system
software, developed algorithms for frequently used mathematical
computations on massively parallel machines, devised performance models
and measured the performance of many computers, and created a
high-performance computing facility based exclusively on parallel computers.
While the initial focus of C
P was the hypercube architecture
developed by C. Seitz at Caltech, many of the methods developed and
lessons learned have been applied successfully on other massively
parallel architectures.
Of course, CP was only one of many projects contributing to this
field and so the contents of this book are only representative of the
important activities in parallel computing during the last ten years.
However, we believe that the project did address a wide range of issues
and applications areas. Thus, a book focussed on C
P has some general
interest. We do, of course, cite other activities but surely not
completely. Other general references which the reader will find
valuable are [Almasi:89a], [Andrews:91a], [Arbib:90a],
[Blelloch:90a], [Brawer:89a], [Doyle:91a], [Duncan:90a],
[Fox:88a], [Golub:89a], [Hayes:89a], [Hennessy:91a],
[Hillis:85a], [Hockney:81a], [Hord:90a], [Hwang:89a],
[IEEE:91a], [Laksh:90a], [Lazou:87a], [Messina:87a;91d],
[Schneck:87a], [Skerrett:92a], [Stone:91a], [Trew:91a],
[Zima:91a].
CP was both a technical and social experiment. It involved a wide
range of disciplines working together to understand the hardware,
software, and algorithmic (applications) issues in parallel computing.
Such multidisciplinary activities are
generally considered of growing relevance to many new academic and
research activities-including the federal high-performance computing
and communication initiative. Many of the participants of C
P are
no longer at Caltech, and this has positive and negative messages.
C
P was not set up in a traditional academic fashion since its core
interdisciplinary field, computational science, is not well understood
or implemented either nationally or in specific universities. This is
explored further in Chapter 20. C
P has led to flourishing
follow-on projects at Caltech, Syracuse University, and elsewhere.
These differ from C
P just as parallel computing has changed from an
exploratory field to one that is in a transitional stage into
development, production, and exploitation.