Heterogeneous Computing with OpenCL 2.0, Third Edition

  • 4h 52m
  • Dana Schaa, David Kaeli, Dong Ping Zhang, Perhaad Mistry
  • Elsevier Science and Technology Books, Inc.
  • 2015

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.

  • 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

In this Book

  • Foreword
  • Introduction
  • Device Architectures
  • Introduction to OpenCL
  • Examples
  • OpenCL Runtime and Concurrency Model
  • OpenCL Host-Side Memory Model
  • OpenCL Device-Side Memory Model
  • Dissecting OpenCL on a Heterogeneous System
  • Case Study—Image Clustering
  • OpenCL Profiling and Debugging
  • Mapping High-Level Programming Languages to OpenCL 2.0—A Compiler Writer's Perspective
  • WebCL—Enabling OpenCL Acceleration of Web Applications
  • Foreign Lands—Plugging OpenCL in
SHOW MORE
FREE ACCESS