Heterogeneous Computing with OpenCL teaches OpenCL and parallel programming for complex systems that may include a variety of device architectures: multi-core CPUs, GPUs, and fully-integrated Accelerated Processing Units (APUs) such as AMD Fusion technology. Designed to work on multiple platforms and with wide industry support, OpenCL will help you more effectively program for a heterogeneous future.
Written by leaders in the parallel computing and OpenCL communities, this book will give you hands-on OpenCL experience to address a range of fundamental parallel algorithms. The authors explore memory spaces, optimization techniques, graphics interoperability, extensions, and debugging and profiling. Intended to support a parallel programming course, Heterogeneous Computing with OpenCL includes detailed examples throughout, plus additional online exercises and other supporting materials.
- Explains principles and strategies to learn parallel programming with OpenCL, from understanding the four abstraction models to thoroughly testing and debugging complete applications.
- Covers image processing, web plugins, particle simulations, video editing, performance optimization, and more.
- Shows how OpenCL maps to an example target architecture and explains some of the tradeoffs associated with mapping to various architectures
- Addresses a range of fundamental programming techniques, with multiple examples and case studies that demonstrate OpenCL extensions for a variety of hardware platforms
Software engineers, programmers, hardware engineers, students / advanced students
About the Authors
Chapter 1. Introduction to Parallel Programming
Chapter 2. Introduction to OpenCL
Chapter 3. OpenCL Device Architectures
Chapter 4. Basic OpenCL Examples
Chapter 5. Understanding OpenCL's Concurrency and Execution Model
Chapter 6. Dissecting a CPU/GPU OpenCL Implementation
Chapter 7. OpenCL Case Study
Chapter 8. OpenCL Case Study
Chapter 9. OpenCL Case Study
Chapter 10. OpenCL Case Study
Chapter 11. OpenCL Extensions
Chapter 12. OpenCL Profiling and Debugging
Chapter 13. WebCL
- No. of pages:
- © Morgan Kaufmann 2011
- 17th August 2011
- Morgan Kaufmann
- eBook ISBN:
- Paperback ISBN:
"With parallel computing now in the mainstream, this book provides an excellent reference on the state-of-the-art techniques in accelerating applications on CPU-GPU systems."--David A. Bader, Georgia Institute of Technology
"Intended for software architects and engineers, this guide to OpenCL examines potential uses and practical application of the cross platform programming language for heterogeneous computing. The work explores the use of OpenCL to design and produce scalable applications that have the ability to be optimized for processor core and GPU usage. Chapters cover an overview of OpenCL, basic examples, CPU/GPU implementation and extensions. Illustrations and sample code, as well as sections outlining case studies for the use of OpenCL in several common situations, are provided."--SciTech Book News