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.
1. Chapter 1. Introduction to Parallel Programming 2. Chapter 2. Introduction to OpenCL 3. Chapter 3. OpenCL Device Architectures 4. Chapter 4. Basic OpenCL Examples 5. Chapter 5. Understanding OpenCL’s Concurrency and Execution Model 6. Chapter 6. Dissecting a CPU/GPU OpenCL Implementation 7. Chapter 7. Data Management 8. Chapter 8. OpenCL Case Study: Convolution 9. Chapter 9. OpenCL Case Study: Histogram 10. Chapter 10. OpenCL Case Study: Mixed Particle Simulation 11. Chapter 11. OpenCL Extensions 12. Chapter 12. Foreign Lands: Plugging OpenCL In 13. Chapter 13. OpenCL Profiling and Debugging 14. Chapter 14. Performance Optimization of an Image Analysis Application 15. Index
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.
1. Chapter 1. Introduction to Parallel Programming 2. Chapter 2. Introduction to OpenCL 3. Chapter 3. OpenCL Device Architectures 4. Chapter 4. Basic OpenCL Examples 5. Chapter 5. Understanding OpenCL’s Concurrency and Execution Model 6. Chapter 6. Dissecting a CPU/GPU OpenCL Implementation 7. Chapter 7. Data Management 8. Chapter 8. OpenCL Case Study: Convolution 9. Chapter 9. OpenCL Case Study: Histogram 10. Chapter 10. OpenCL Case Study: Mixed Particle Simulation 11. Chapter 11. OpenCL Extensions 12. Chapter 12. Foreign Lands: Plugging OpenCL In 13. Chapter 13. OpenCL Profiling and Debugging 14. Chapter 14. Performance Optimization of an Image Analysis Application 15. Index