AppH - H.1 H.2 H.3 H.4 H.5 H.6 H.7 H.8 H.9 Introduction...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon
H.1 Introduction H-2 H.2 Interprocessor Communication: The Critical Performance Issue H-3 H.3 Characteristics of ScientiFc Applications H-6 H.4 Synchronization: Scaling Up H-12 H.5 Performance of ScientiFc Applications on Shared-Memory Multiprocessors H-21 H.6 Performance Measurement of Parallel Processors with ScientiFc Applications H-33 H.7 Implementing Cache Coherence H-34 H.8 The Custom Cluster Approach: Blue Gene/L H-41 H.9 Concluding Remarks H-44
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
H Large-Scale Multiprocessors and Scientifc Applications “Hennessy and Patterson should move MPPs to Chapter 11.” Jim Gray, MicrosoFt Research, when asked about the coverage of massively parallel pro- cessors (MPPs) for the third edition in 2000 Unfortunately for companies in the MPP business, the third edition had only ten chapters and the MPP business did not grow as anticipated when the Frst and second edition were written.
Background image of page 2
H-2 n Appendix H Large-Scale Multiprocessors and Scientifc Applications The primary application of large-scale multiprocessors is for true parallel pro- gramming, as opposed to multiprogramming or transaction-oriented computing where independent tasks are executed in parallel without much interaction. In true parallel computing, a set of tasks execute in a collaborative fashion on one application. The primary target of parallel computing is scientiFc and technical applications. In contrast, for loosely coupled commercial applications, such as Web servers and most transaction-processing applications, there is little commu- nication among tasks. ±or such applications, loosely coupled clusters are gener- ally adequate and most cost-effective, since intertask communication is rare. Because true parallel computing involves cooperating tasks, the nature of communication between those tasks and how such communication is supported in the hardware is of vital importance in determining the performance of the application. The next section of this appendix examines such issues and the char- acteristics of different communication models. In comparison to sequential programs, whose performance is largely dictated by the cache behavior and issues related to instruction-level parallelism, parallel programs have several additional characteristics that are important to perfor- mance, including the amount of parallelism, the size of parallel tasks, the fre- quency and nature of intertask communication, and the frequency and nature of synchronization. These aspects are affected both by the underlying nature of the application as well as by the programming style. Section H.3 reviews the impor- tant characteristics of several scientiFc applications to give a ²avor of these issues. As we saw in Chapter 4, synchronization can be quite important in achieving good performance. The larger number of parallel tasks that may need to synchro- nize makes contention involving synchronization a much more serious problem in large-scale multiprocessors. Section H.4 examines methods of scaling up the synchronization mechanisms of Chapter 4.
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 47

AppH - H.1 H.2 H.3 H.4 H.5 H.6 H.7 H.8 H.9 Introduction...

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online