In Parts I and II of this book, we have described the fundamental concepts and tools required to design and build parallel programs. In the process, we have also introduced a number of important algorithms, communication structures, and problem-solving techniques that can serve as building blocks in our programs. In Part III, we add to this set of building blocks. The goal is not to be in any way comprehensive, but instead simply to indicate the range of parallel algorithms that have been developed and to provide pointers to other information sources.
Hence, Chapter 10 introduces the important topic of
parallel random numbers. Chapter 11 surveys parallel
algorithms based on an important communication structure, the
hypercube. Chapter 12 provides additional
© Copyright 1995 by Ian Foster