Parallel programming in OpenMP - Chandra, Rohit (San Francisco, CA : Morgan Kaufmann Publishers, 2001)
The rapid and widespread acceptance of shared-memory multiprocessor architectures has created a pressing demand for an efficient way to program these systems. At the same time, developers of technical and scientific applications in industry and in government laboratories find they need to parallelize huge volumes of code in a portable fashion. OpenMP, developed jointly by several parallel computing vendors to address these issues, is an industry-wide standard for programming shared-memory and distributed shared-memory multiprocessors. It consists of a set of compiler directives and library routines that extend FORTRAN, C, and C++ codes to express shared-memory parallelism. Parallel Programming in OpenMP is the first book to teach both the novice and expert parallel programmers how to program using this new standard. The authors, who helped design and implement OpenMP while at SGI, bring a depth and breadth to the book as compiler writers, application developers, and performance engineers. * Designed so that expert parallel programmers can skip the opening chapters, which introduce parallel programming to novices, and jump right into the essentials of OpenMP. * Presents all the basic OpenMP constructs in FORTRAN, C, and C++. * Emphasizes practical concepts to address the concerns of real application developers. * Includes high quality example programs that illustrate concepts of parallel programming as well as all the constructs of OpenMP. * Serves as both an effective teaching text and a compact reference. * Includes end-of-chapter programming exercis
Foreword -- Preface -- Chapter 1: Introduction -- Chapter 2 Getting started with OpenMP -- Chapter 3: Exploiting loop-level parallelism -- Chapter 4: Beyond loop-level parallelism: Parallel Regions -- Chapter 5: Synchronization -- Chapter 6: Performance -- Glossary References -- Index.
Includes bibliographical references (p. 217-220) and index.
1
Keywords: Parallel programming (Computer science)