Browse content
Table of contents
Actions for selected chapters
- Full text access
- Book chapterAbstract only
Chapter 1 - Introduction
Pages 1-18 - Book chapterAbstract only
Chapter 2 - Data parallel computing
Pages 19-41 - Book chapterAbstract only
Chapter 3 - Scalable parallel execution
Pages 43-69 - Book chapterAbstract only
Chapter 4 - Memory and data locality
Pages 71-101 - Book chapterAbstract only
Chapter 5 - Performance considerations
Pages 103-130 - Book chapterAbstract only
Chapter 6 - Numerical considerations
Pages 131-147 - Book chapterAbstract only
Chapter 7 - Parallel patterns: convolution: An introduction to stencil computation
Pages 149-174 - Book chapterAbstract only
Chapter 8 - Parallel patterns: prefix sum: An introduction to work efficiency in parallel algorithms
Pages 175-197 - Book chapterAbstract only
Chapter 9 - Parallel patterns—parallel histogram computation: An introduction to atomic operations and privatization
Pages 199-214 - Book chapterAbstract only
Chapter 10 - Parallel patterns: sparse matrix computation: An introduction to data compression and regularization
Pages 215-230 - Book chapterAbstract only
Chapter 11 - Parallel patterns: merge sort: An introduction to tiling with dynamic input data identification
Pages 231-256 - Book chapterAbstract only
Chapter 12 - Parallel patterns: graph search
Pages 257-274 - Book chapterAbstract only
Chapter 13 - CUDA dynamic parallelism
Pages 275-304 - Book chapterAbstract only
Chapter 14 - Application case study—non-Cartesian magnetic resonance imaging: An introduction to statistical estimation methods
Pages 305-329 - Book chapterAbstract only
Chapter 15 - Application case study—molecular visualization and analysis
Pages 331-344 - Book chapterAbstract only
Chapter 16 - Application case study—machine learning
Pages 345-367 - Book chapterAbstract only
Chapter 17 - Parallel programming and computational thinking
Pages 369-386 - Book chapterAbstract only
Chapter 18 - Programming a heterogeneous computing cluster
Pages 387-411 - Book chapterAbstract only
Chapter 19 - Parallel programming with OpenACC
Pages 413-441 - Book chapterAbstract only
Chapter 20 - More on CUDA and graphics processing unit computing
Pages 443-456 - Book chapterAbstract only
Chapter 21 - Conclusion and outlook
Pages 457-459 - Book chapterNo access
Appendix A - An introduction to OpenCL
Pages 461-474 - Book chapterNo access
Appendix B - THRUST: a productivity-oriented library for CUDA
Pages 475-491 - Book chapterNo access
Appendix C - CUDA Fortran
Pages 493-513 - Book chapterNo access
Appendix D - An introduction to C++ AMP
Pages 515-534 - Book chapterNo access
Index
Pages 535-550
About the book
Description
Programming Massively Parallel Processors: A Hands-on Approach, Third Edition shows both student and professional alike the basic concepts of parallel programming and GPU architecture, exploring, in detail, various techniques for constructing parallel programs.
Case studies demonstrate the development process, detailing computational thinking and ending with effective and efficient parallel programs. Topics of performance, floating-point format, parallel patterns, and dynamic parallelism are covered in-depth.
For this new edition, the authors have updated their coverage of CUDA, including coverage of newer libraries, such as CuDNN, moved content that has become less important to appendices, added two new chapters on parallel patterns, and updated case studies to reflect current industry practices.
Programming Massively Parallel Processors: A Hands-on Approach, Third Edition shows both student and professional alike the basic concepts of parallel programming and GPU architecture, exploring, in detail, various techniques for constructing parallel programs.
Case studies demonstrate the development process, detailing computational thinking and ending with effective and efficient parallel programs. Topics of performance, floating-point format, parallel patterns, and dynamic parallelism are covered in-depth.
For this new edition, the authors have updated their coverage of CUDA, including coverage of newer libraries, such as CuDNN, moved content that has become less important to appendices, added two new chapters on parallel patterns, and updated case studies to reflect current industry practices.
Key Features
- Teaches computational thinking and problem-solving techniques that facilitate high-performance parallel computing
- Utilizes CUDA version 7.5, NVIDIA's software development tool created specifically for massively parallel environments
- Contains new and updated case studies
- Includes coverage of newer libraries, such as CuDNN for Deep Learning
- Teaches computational thinking and problem-solving techniques that facilitate high-performance parallel computing
- Utilizes CUDA version 7.5, NVIDIA's software development tool created specifically for massively parallel environments
- Contains new and updated case studies
- Includes coverage of newer libraries, such as CuDNN for Deep Learning
Details
ISBN
978-0-12-811986-0
Language
English
Published
2017
Copyright
Copyright © 2017 Elsevier Inc. All rights reserved.
Imprint
Morgan Kaufmann