OpenCL2BookHeterogeneous Computing with OpenCL 2.0, 1st Edition

By David Kaeli, Perhaad Mistry, Dana Schaa and Dong Ping Zhang

330 pages
Copyright 2015

Buying Information

Readership: Software engineers, programmers, hardware engineers, graduate students



Heterogeneous Computing with OpenCL 2.0 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). This fully-revised edition includes the latest enhancements in OpenCL 2.0 including:  Shared virtual memory to increase programming flexibility and reduce data transfers that consume resources; Dynamic parallelism which reduces processor load and avoids bottlenecks; Improved imaging support and integration with OpenGL

Designed to work on multiple platforms, OpenCL will help you more effectively program for a heterogeneous future. Written by leaders in the parallel computing and OpenCL communities, this book explores memory spaces, optimization techniques, extensions, debugging and profiling. Multiple case studies and examples illustrate high-performance algorithms, distributing work across heterogeneous systems, embedded domain-specific languages, and will give you hands-on OpenCL experience to address a range of fundamental parallel algorithms.

Key Features

  • Updated content to cover the latest developments in OpenCL 2.0, including improvements in memory handling, parallelism, and imaging support
  • Explanations of principles and strategies to learn parallel programming with OpenCL, from understanding the abstraction models to thoroughly testing and debugging complete applications
  • Example code covering image analytics, web plugins, particle simulations, video editing, performance optimization, and more

Table of Contents

Ch 1: Introduction
Ch 2: Device Architectures
Ch 3: Introduction to OpenCL
Ch 4: Examples
Ch 5: Execution Model
Ch 6: host-side memory model
Ch 7: device-side memory model

Ch 8: Implementation
Ch 9: Case study: Image Clustering and Search
Ch 10: Profiling and Debugging
Ch 11: C++ AMP
Ch 12: WebCL
Ch 13: Foreign Lands: Plugging OpenCL

Heterogeneous Computing with OpenCL - Book Cover

Heterogeneous Computing with OpenCL™ 1.2
By Benedict Gaster, Lee Howes, David R. Kaeli, Perhaad Mistry & Dana Schaa

400 pages
Copyright 2011

Buying Information


Written by leaders in the parallel computing and OpenCL communities, this book will give you hands-on OpenCL 1.2 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.