gogogo
Syndetics cover image
Image from Syndetics

Heterogeneous computing with OpenCL [electronic book] / Benedict Gaster ... [et al.].

Contributor(s): Material type: TextTextPublication details: Waltham, MA : Morgan Kaufmann, c2012.Description: xvi, 277 p. : ill. ; 24 cmISBN:
  • 0123877660 (electronic bk.)
  • 9780123877666 (electronic bk.)
Subject(s): Genre/Form: Online resources:
Contents:
-- Introduction to Parallel Programming -- Introduction to OpenCL -- OpenCL Device Architectures -- Basic OpenCL Examples -- Understanding OpenCL's Concurrency and Execution Model -- Dissecting a CPU/GPU OpenCL Implementation -- OpenCL Case Study: Convolution -- OpenCL Case Study: Video Processing -- OpenCL Case Study: Histogram -- OpenCL Case Study: Mixed Particle Simulation -- OpenCL Extensions -- OpenCL Profiling and Debugging -- WebCL.
Introduction to parallel programming -- Introduction to OpenCL -- OpenCL device architectures -- Basic OpenCL examples -- Understanding OpenCL's concurrency and execution model -- Dissecting an CPU/GPU OpenCL implementation -- OpenCL case study : convolution -- OpenCL case study : video processing -- OpenCL case study : histogram -- OpenCL case study : mixed particle simulation -- OpenCL extensions -- OpenCL profiling and debugging -- WebCL.
Summary: 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.
No physical items for this record

Enhanced descriptions from Syndetics:

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.

Includes bibliographical references and index.

-- Introduction to Parallel Programming -- Introduction to OpenCL -- OpenCL Device Architectures -- Basic OpenCL Examples -- Understanding OpenCL's Concurrency and Execution Model -- Dissecting a CPU/GPU OpenCL Implementation -- OpenCL Case Study: Convolution -- OpenCL Case Study: Video Processing -- OpenCL Case Study: Histogram -- OpenCL Case Study: Mixed Particle Simulation -- OpenCL Extensions -- OpenCL Profiling and Debugging -- WebCL.

Introduction to parallel programming -- Introduction to OpenCL -- OpenCL device architectures -- Basic OpenCL examples -- Understanding OpenCL's concurrency and execution model -- Dissecting an CPU/GPU OpenCL implementation -- OpenCL case study : convolution -- OpenCL case study : video processing -- OpenCL case study : histogram -- OpenCL case study : mixed particle simulation -- OpenCL extensions -- OpenCL profiling and debugging -- WebCL.

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.

Electronic reproduction. Amsterdam : Elsevier Science & Technology, 2011. Mode of access: World Wide Web. System requirements: Web browser. Title from title screen (viewed on Nov. 2, 2011). Access may be restricted to users at subscribing institutions.

Table of contents provided by Syndetics

  • Introduction to Parallel Programming
  • Introduction to OpenCL
  • OpenCL Device Architectures
  • Basic OpenCL Examples
  • Understanding OpenCL's Concurrency and Execution Model
  • Dissecting a CPU/GPU OpenCL Implementation
  • OpenCL Case Study: Convolution
  • OpenCL Case Study: Video Processing
  • OpenCL Case Study: Histogram
  • OpenCL Case Study: Mixed Particle Simulation
  • OpenCL Extensions
  • OpenCL Profiling and Debugging
  • WebCL

Author notes provided by Syndetics

Benedict R. Gaster is a software architect working on programming models for next-generation heterogeneous processors, in particular looking at high-level abstractions for parallel programming on the emerging class of processors that contain both CPUs and accelerators such as GPUs. Benedict has contributed extensively to the OpenCL's design and has represented AMD at the Khronos Group open standard consortium. Benedict has a Ph.D in computer science for his work on type systems for extensible records and variants.

Lee Howes has spent the last two years working at AMD and currently focuses on programming models for the future of heterogeneous computing. Lee's interests lie in declaratively representing mappings of iteration domains to data and in communicating complicated architectural concepts and optimizations succinctly to a developer audience, both through programming model improvements and education. Lee has a Ph.D. in computer science from Imperial College London for work in this area.

David Kaeli received a BS and PhD in Electrical Engineering from Rutgers University, and an MS in Computer Engineering from Syracuse University. He is the Associate Dean of Undergraduate Programs in the College of Engineering and a Full Processor on the ECE faculty at Northeastern University, Boston, MA where he directs the Northeastern University Computer Architecture Research Laboratory (NUCAR). Prior to joining Northeastern in 1993, Kaeli spent 12 years at IBM, the last 7 at T.J. Watson Research Center, Yorktown Heights, NY.

Dr. Kaeli has co-authored more than 200 critically reviewed publications. His research spans a range of areas including microarchitecture to back-end compilers and software engineering. He leads a number of research projects in the area of GPU Computing. He presently serves as the Chair of the IEEE Technical Committee on Computer Architecture. Dr. Kaeli is an IEEE Fellow and a member of the ACM.

Perhaad Mistry works in AMD's developer tools group at the Boston Design Center focusing on developing debugging and performance profiling tools for heterogeneous architectures. He is presently focused on debugger architectures for upcoming platforms shared memory and discrete Graphics Processing Unit (GPU) platforms. Perhaad has been working on GPU architectures and parallel programming since CUDA 0.8 in 2007. He has enjoyed implementing medical imaging algorithms for GPGPU platforms and architecture aware data structures for surgical simulators. Perhaad's present work focuses on the design of debuggers and architectural support for performance analysis for the next generation of applications that will target GPU platforms.

Perhaad graduated after 7 years with a PhD from Northeastern University in Electrical and Computer Engineering and was advised by Dr. David Kaeli who the leads Northeastern University Computer Architecture Research Laboratory (NUCAR). Even after graduating, Perhaad is still a member of NUCAR and is advising on research projects on performance analysis of parallel architectures. He received a BS in Electronics Engineering from University of Mumbai and an MS in Computer Engineering from Northeastern University in Boston. He is presently based in Boston.

Dana Schaa received a BS in Computer Engineering from Cal Poly, San Luis Obispo, and an MS and PhD in Electrical and Computer Engineering from Northeastern University. He works on GPU architecture modeling at AMD, and has interests and expertise that include memory systems, microarchitecture, performance analysis, and general purpose computing on GPUs. His background includes the development OpenCL-based medical imaging applications ranging from real-time visualization of 3D ultrasound to CT image reconstruction in heterogeneous environments. Dana married his wonderful wife Jenny in 2010, and they live together in San Jose with their charming cats.

Powered by Koha