By
David Culler, University of California, Berkeley
J.P. Singh, Princeton University
Anoop Gupta, Carnegie Mellon University
Description
The most exciting development in parallel computer architecture is the convergence of traditionally disparate approaches on a common
machine structure. This book explains the forces behind this convergence of shared-memory, message-passing, data parallel, and data-driven
computing architectures. It then examines the design issues that are critical to all parallel architecture across the full range of modern
design, covering data access, communication performance, coordination of cooperative work, and correct implementation of useful semantics.
It not only describes the hardware and software techniques for addressing each of these issues but also explores how these techniques
interact in the same system. Examining architecture from an application-driven perspective, it provides comprehensive discussions of
parallel programming for high performance and of workload-driven evaluation, based on understanding hardware-software interactions.