Book description
The CUDA Handbook begins where CUDA by Example (Addison-Wesley, 2011) leaves off, discussing CUDA hardware and software in greater detail and covering both CUDA 5.0 and Kepler. Every CUDA developer, from the casual to the most sophisticated, will find something here of interest and immediate usefulness. Newer CUDA developers will see how the hardware processes commands and how the driver checks progress; more experienced CUDA developers will appreciate the expert coverage of topics such as the driver API and context migration, as well as the guidance on how best to structure CPU/GPU data interchange and synchronization.
The accompanying open source code–more than 25,000 lines of it, freely available at www.cudahandbook.com–is specifically intended to be reused and repurposed by developers.
Designed to be both a comprehensive reference and a practical cookbook, the text is divided into the following three parts:
Part I, Overview, gives high-level descriptions of the hardware and software that make CUDA possible.
Part II, Details, provides thorough
descriptions of every aspect of CUDA, including
Memory
Streams and events
Models of execution, including the dynamic parallelism feature, new with CUDA 5.0 and SM 3.5
The streaming multiprocessors, including descriptions of all features through SM 3.5
Programming multiple GPUs
Texturing
The source code accompanying Part II is
presented as reusable microbenchmarks and microdemos, designed to
expose specific hardware characteristics or highlight specific use
cases.
Part III, Select Applications, details specific families of CUDA applications and key parallel algorithms, including
Streaming workloads
Reduction
Parallel prefix sum (Scan)
N-body
Image Processing
These algorithms cover the full range of potential CUDA applications.
Table of contents
- About This eBook
- Title Page
- Copyright Page
- Dedication Page
- Contents
- Preface
- Acknowledgments
- About the Author
- Part I
-
Part II
- Chapter 5. Memory
-
Chapter 6. Streams and Events
- 6.1. CPU/GPU Concurrency: Covering Driver Overhead
- 6.2. Asynchronous Memcpy
- 6.3. CUDA Events: CPU/GPU Synchronization
- 6.4. CUDA Events: Timing
- 6.5. Concurrent Copying and Kernel Processing
- 6.6. Mapped Pinned Memory
- 6.7. Concurrent Kernel Processing
- 6.8. GPU/GPU Synchronization: cudaStreamWaitEvent()
- 6.9. Source Code Reference
- Chapter 7. Kernel Execution
- Chapter 8. Streaming Multiprocessors
- Chapter 9. Multiple GPUs
-
Chapter 10. Texturing
- 10.1. Overview
- 10.2. Texture Memory
- 10.3. 1D Texturing
- 10.4. Texture as a Read Path
- 10.5. Texturing with Unnormalized Coordinates
- 10.6. Texturing with Normalized Coordinates
- 10.7. 1D Surface Read/Write
- 10.8. 2D Texturing
- 10.9. 2D Texturing: Copy Avoidance
- 10.10. 3D Texturing
- 10.11. Layered Textures
- 10.12. Optimal Block Sizing and Performance
- 10.13. Texturing Quick References
- Part III
- Appendix A. The CUDA Handbook Library
- Glossary / TLA Decoder
- Index
Product information
- Title: The CUDA Handbook: A Comprehensive Guide to GPU Programming
- Author(s):
- Release date: June 2013
- Publisher(s): Addison-Wesley Professional
- ISBN: 9780133261516
You might also like
audiobook
The Design of Everyday Things
First, businesses discovered quality as a key competitive edge; next came science. Now, Donald A. Norman, …
book
Web Programming with HTML5, CSS, and JavaScript
Web Programming with HTML5, CSS, and JavaScript is written for the undergraduate, client-side web programming course. …
book
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …
video
Amazon Web Services (AWS), 3rd Edition
18+ Hours of Video Instruction Get intensive, hands-on AWS training with Chad Smith in this 2 …