An Introduction to Parallel Programming,
Edition 2
By Peter Pacheco and Matthew Malensek

Publication Date: 27 Oct 2021
Description
An Introduction to Parallel Programming, Second Edition presents a tried-and-true tutorial approach that shows students how to develop effective parallel programs with MPI, Pthreads and OpenMP.

As the first undergraduate text to directly address compiling and running parallel programs on multi-core and cluster architecture, this second edition carries forward its clear explanations for designing, debugging and evaluating the performance of distributed and shared-memory programs while adding coverage of accelerators via new content on GPU programming and heterogeneous programming. New and improved user-friendly exercises teach students how to compile, run and modify example programs.

Key Features

  • Takes a tutorial approach, starting with small programming examples and building progressively to more challenging examples
  • Explains how to develop parallel programs using MPI, Pthreads and OpenMP programming models
  • A robust package of online ancillaries for instructors and students includes lecture slides, solutions manual, downloadable source code, and an image bank

    New to this edition:
  • New chapters on GPU programming and heterogeneous programming
  • New examples and exercises related to parallel algorithms
About the author
By Peter Pacheco, University of San Francisco, USA and Matthew Malensek, Department of Computer Science, University of San Francisco, CA, USA
Table of Contents
1. Why parallel computing
2. Parallel hardware and parallel software
3. Distributed memory programming with MPI
4. Shared-memory programming with Pthreads
5. Shared-memory programming with OpenMP
6. GPU programming with CUDA
7. Parallel program development
8. Where to go from here
Book details
ISBN: 9780128046050
Page Count: 496
Illustrations : 65 illustrations
Retail Price : £62.99
9780128119860; 9780124171374; 9780123973375
Instructor Resources
Audience
Students in undergraduate parallel programming or parallel computing courses designed for the computer science major or as a service course to other departments; professionals with no background in parallel computing
Reviews
people find this review helpful
people find this review helpful
people find this review helpful
people find this review helpful
people find this review helpful
people find this review helpful