
156 CHAPTER 3 Programming for Performance
Much of the focus in parallel architecture has in fact been on reducing communi-
cation cost as seen by the processor: by reducing communication overhead and delay
by increasing bandwidth and reducing occupancy and by providing mechanisms to
alleviate contention and overlap communication with computation or other commu-
nication. Many of the later chapters therefore devote a lot of attention to covering
these issues—including the design of node-to-network interfaces, communication
assists, and protocols that minimize both software and hardware overhead (Chapters
5 through 9); the design of network topologies ...