As the computer industry retools to leverage massively parallel graphics processing units (GPUs), this book is designed to meet the needs of working software developers who need to understand GPU programming with CUDA and increase efficiency in their projects. CUDA Application Design and Development starts with an introduction to parallel computing concepts for readers with no previous parallel experience, and focuses on issues of immediate importance to working software developers: achieving high performance, maintaining competitiveness, analyzing CUDA benefits versus costs, and determining application lifespan.
The book then details the thought behind CUDA and teaches how to create, analyze, and debug CUDA applications. Throughout, the focus is on software engineering issues: how to use CUDA in the context of existing application code, with existing compilers, languages, software tools, and industry-standard API libraries.
Using an approach refined in a series of well-received articles at Dr Dobb's Journal, author Rob Farber takes the reader step-by-step from fundamentals to implementation, moving from language theory to practical coding.
Please Note: This is an On Demand product, delivery may take up to 11 working days after payment has been received.
Table of Contents
1. First Programs and How to Think in CUDA
2. CUDA for Machine Learning and Optimization
3. The CUDA Tool Suite: Profiling a PCA/NLPCA Functor
4. The CUDA Execution Model
5. CUDA Memory
6. Efficiently Using GPU Memory
7. Techniques to Increase Parallelism
8. CUDA for All GPU and CPU Applications
9. Mixing CUDA and Rendering
10. CUDA in a Cloud and Cluster Environments
11. CUDA for Real Problems: Monte Carlo, Modeling, and More
12. Application Focus on Live Streaming Video