General-Purpose Graphics Processor Architectures
Tor M. Aamodt, University of British Columbia
Wilson Wai Lun Fung, Samsung Electronics
Timothy G. Rogers, Purdue University
Paperback ISBN: 9781627059237
eBook ISBN: 9781627056182
Hardcover ISBN: 9781681733586
May 2018, 140 pages
Originally developed to support video games, graphics processor units (GPUs) are now increasingly used for general-purpose (non-graphics) applications ranging from machine learning to mining of cryptographic currencies. GPUs can achieve improved performance and efficiency versus central processing units (CPUs) by dedicating a larger fraction of hardware resources to computation. In addition, their general-purpose programmability makes contemporary GPUs appealing to software developers in comparison to domain-specific accelerators. This book provides an introduction to those interested in studying the architecture of GPUs that support general-purpose computing. It collects together information currently only found among a wide range of disparate sources. The authors led development of the GPGPU-Sim simulator widely used in academic research on GPU architectures.
The first chapter of this book describes the basic hardware structure of GPUs and provides a brief overview of their history. Chapter 2 provides a summary of GPU programming models relevant to the rest of the book. Chapter 3 explores the architecture of GPU compute cores. Chapter 4 explores the architecture of the GPU memory system. After describing the architecture of existing systems, Chapters 3 and 4 provide an overview of related research. Chapter 5 summarizes cross-cutting research impacting both the compute core and memory system.
This book should provide a valuable resource for those wishing to understand the architecture of graphics processor units (GPUs) used for acceleration of general-purpose applications and to those who want to obtain an introduction to the rapidly growing body of research exploring how to improve the architecture of these GPUs.
Table of Contents:
Preface / Acknowledgments / Introduction / Programming Model / The SIMT Core: Instruction and Register Data Flow / Memory System / Crosscutting Research on GPU Computing Architectures / Bibliography / Authors’ Biographies