Book description
GPU Computing Gems, Jade Edition, offers hands-on, proven techniques for general purpose GPU programming based on the successful application experiences of leading researchers and developers. One of few resources available that distills the best practices of the community of CUDA programmers, this second edition contains 100% new material of interest across industry, including finance, medicine, imaging, engineering, gaming, environmental science, and green computing. It covers new tools and frameworks for productive GPU computing application development and provides immediate benefit to researchers developing improved programming environments for GPUs.
Divided into five sections, this book explains how GPU execution is achieved with algorithm implementation techniques and approaches to data structure layout. More specifically, it considers three general requirements: high level of parallelism, coherent memory access by threads within warps, and coherent control flow within warps. Chapters explore topics such as accelerating database searches; how to leverage the Fermi GPU architecture to further accelerate prefix operations; and GPU implementation of hash tables. There are also discussions on the state of GPU computing in interactive physics and artificial intelligence; programming tools and techniques for GPU computing; and the edge and node parallelism approach for computing graph centrality metrics. In addition, the book proposes an alternative approach that balances computation regardless of node degree variance.
Software engineers, programmers, hardware engineers, and advanced students will find this book extremely usefull. For useful source codes discussed throughout the book, the editors invite readers to the following website:
Table of contents
- Cover image
- Title page
- Table of Contents
- Front Matter
- Copyright
- Editors, Reviewers, and Authors
- Introduction
-
Section 1: Parallel Algorithms and Data Structures
- Introduction
- Chapter 1. Large-Scale GPU Search
- Chapter 2. Edge v. Node Parallelism for Graph Centrality Metrics
- Chapter 3. Optimizing Parallel Prefix Operations for the Fermi Architecture
- Chapter 4. Building an Efficient Hash Table on the GPU
- Chapter 5. Efficient CUDA Algorithms for the Maximum Network Flow Problem
- Chapter 6. Optimizing Memory Access Patterns for Cellular Automata on GPUs
- Chapter 7. Fast Minimum Spanning Tree Computation
- Chapter 8. Comparison-Based In-Place Sorting with CUDA
-
Section 2: Numerical Algorithms
- Introduction
- Chapter 9. Interval Arithmetic in CUDA
- Chapter 10. Approximating the erfinv Function
- Chapter 11. A Hybrid Method for Solving Tridiagonal Systems on the GPU
- Chapter 12. Accelerating CULA Linear Algebra Routines with Hybrid GPU and Multicore Computing
- Chapter 13. GPU Accelerated Derivative-Free Mesh Optimization
-
Section 3: Engineering Simulation
- Introduction
- Chapter 14. Large-Scale Gas Turbine Simulations on GPU Clusters
- Chapter 15. GPU Acceleration of Rarefied Gas Dynamic Simulations
- Chapter 16. Application of Assembly of Finite Element Methods on Graphics Processors for Real-Time Elastodynamics
- Chapter 17. CUDA Implementation of Vertex-Centered, Finite Volume CFD Methods on Unstructured Grids with Flow Control Applications
- Chapter 18. Solving Wave Equations on Unstructured Geometries
- Chapter 19. Fast Electromagnetic Integral Equation Solvers on Graphics Processing Units
- Section 4: Interactive Physics and AI for Games and Engineering Simulation
- Section 5: Computational Finance
-
Section 6: Programming Tools and Techniques
- Introduction
- Chapter 26. Thrust: A Productivity-Oriented Library for CUDA
- Chapter 27. GPU Scripting and Code Generation with PyCUDA
- Chapter 28. Jacket: GPU Powered MATLAB Acceleration
- Chapter 29. Accelerating Development and Execution Speed with Just-in-Time GPU Code Generation
- Chapter 30. GPU Application Development, Debugging, and Performance Tuning with GPU Ocelot
- Chapter 31. Abstraction for AoS and SoA Layout in C++
- Chapter 32. Processing Device Arrays with C++ Metaprogramming
- Chapter 33. GPU Metaprogramming: A Case Study in Biologically Inspired Machine Vision
- Chapter 34. A Hybridization Methodology for High-Performance Linear Algebra Software for GPUs
- Chapter 35. Dynamic Load Balancing Using Work-Stealing
- Chapter 36. Applying Software-Managed Caching and CPU/GPU Task Scheduling for Accelerating Dynamic Workloads
- Index
Product information
- Title: GPU Computing Gems Jade Edition
- Author(s):
- Release date: November 2011
- Publisher(s): Morgan Kaufmann
- ISBN: 9780123859648
You might also like
book
GPU Computing Gems Emerald Edition
GPU Computing Gems Emerald Edition offers practical techniques in parallel computing using graphics processing units (GPUs) …
book
GPU Gems 3
“The GPU Gems series features a collection of the most essential algorithms required by Next-Generation 3D …
book
GPU Gems 2: Programming Techniques for High-Performance Graphics and General-Purpose Computation
“ GPU Gems 2 isn’t meant to simply adorn your bookshelf—it’s required reading for anyone trying …
book
GPU Gems: Programming Techniques, Tips and Tricks for Real-Time Graphics
GPU Gems has won a prestigious Front Line Award from Game Developer Magazine. The Front Line …