Synopses & Reviews
This book aims to help readers understand the key performance issues that arise when programming on general-purpose graphics processing unit (GPGPU) hardware. Although there are many excellent resources available with similar aims, this book emphasizes general principles in algorithm design and how these are translated into low-level GPGPU architectures and programming. It includes a brief overview of GPGPU architectures and programming (Chapter 1), high- level algorithmic design theory (Chapter 2), a case study in translating theory into performance engineering practice on GPGPUs (Chapter 3), and a survey of the current state-of-the-art in lower-level performance modeling and analysis for GPGPUs (Chapter 4). Taken together, we hope this material provides a unique end- to-end view of performance understanding for GPGPUs.