OpenCL Parallel Programming Development Cookbook
By Raymond Tay
Publisher: Packt Publishing
Final Release Date: August 2013
Pages: 302

In Detail

OpenCL (Open Computing Language) is the first royalty-free standard for cross platform, parallel programming of modern processors found in personal computers, servers, mobiles, and embedded devices. OpenCL greatly improves speed and responsiveness for a wide spectrum of applications in numerous market categories, from gaming and entertainment to scientific and medical software. OpenCL has proved itself to be versatile in that it now runs on not only operating systems like Windows and Linux powered by Intel and AMD processors, but also on low power chips like ARM, and it has also been adopted by processor manufacturers like ARM Corp, Vivante, and Altera, among others.

OpenCL Parallel Programming Development Cookbook was designed to be practical so that we achieve a good balance between theory and application. Learning to program in a parallel way is relatively easy, but to be able to take advantage of all of the resources available to you efficiently is quite different. You need to be shown not only application, but also the theory behind it.

This book is roughly in two parts, where the first part is the fundamentals of OpenCL parallel development and the second part is the various algorithms we will explore with you. Each part is packed with many code samples and illustrations to demonstrate various concepts. The first part is essential for a beginner to not only program in parallel, but also to think in parallel and become equipped with the mental model with which to tackle parallel programming. The second part consists of seven different algorithms that the author has identified; you will learn various parallel programming techniques that experts have used in the past 60 years that are applicable to OpenCL.

This book will demonstrate how you think in parallel by illustrating and demonstrating programming techniques like data partitioning, thread coarsening, register tiling, data pre-fetching, and algorithm transformation. These techniques are demonstrated in the seven algorithms you’ll be shown, from image processing and solving sparse linear systems to in-memory sorting.
OpenCL Parallel Programming Development Cookbook combines recipes, illustrations, code, and explanations to allow you to learn the essentials of parallel programming in OpenCL, and the author has added in enough math so that the readers understand the motivation and can also lay the foundation upon which they will begin their own exploration.


OpenCL Parallel Programming Development Cookbook will provide a set of advanced recipes that can be utilized to optimize existing code. This book is therefore ideal for experienced developers with a working knowledge of C/C++ and OpenCL.

Who this book is for

This book is intended for software developers who have often wondered what to do with that newly bought CPU or GPU they bought other than using it for playing computer games; this book is also for developers who have a working knowledge of C/C++ and who want to learn how to write parallel programs in OpenCL so that life isn’t too boring.

Product Details
Recommended for You
Customer Reviews


by PowerReviews
oreillyOpenCL Parallel Programming Development Cookbook

(based on 1 review)

Ratings Distribution

  • 5 Stars



  • 4 Stars



  • 3 Stars



  • 2 Stars



  • 1 Stars



Reviewed by 1 customer

Displaying review 1

Back to top


Liked the recipe based approach

By John McRoy

from Palo Alto, CA

About Me Developer, Sys Admin

Verified Reviewer


  • Accurate
  • Easy to understand
  • Helpful examples
  • Well-written


  • Too basic

Best Uses

  • Intermediate
  • Novice

Comments about oreilly OpenCL Parallel Programming Development Cookbook:

There are many books on OpenCL out there in the market but the approach this author decided to take is based on providing a recipe based approach to it which works for me as its packed with solutions to various problems and liked the fact that the author walked through the solutions. Appreciated that a lot.

I'm guessing the author tries to balance the amount of theory with practical examples and i liked that.

The chapter on sparse-matrix multiplication was cool as the author took a different route from the rest of the books out there by demonstrating how different storage formats played a equally strong part in addition to the regular matrix-vector multiplication. The chapter on bitonic sort was most beneficial to me as i am, rather i was, involved with a variant of that algorithm and i found the chapter to be well written and liked it. The chapter on the radix-sort was a little too involved i think as there's a simpler solution than the one presented but still its decent enough.

So comes things that aren't so great, i have a couple of grievances and one of them is the ebook presentation which isn't quite something i'm used to as to say from O'Reilly and the dead tree version was rather atrocious; kind of takes the lustre off the content of the book really. I had a feeling that the author rushed through some parts which he could slowed down and provided more examples like OpenCL Event-Management but these are problems probably more of the publisher than the author.

Overall, i find the contents to be quite worth the buck!

Displaying review 1

Back to top

Buy 2 Get 1 Free Free Shipping Guarantee
Buying Options
Immediate Access - Go Digital what's this?
Ebook:  $32.99
Formats:  ePub, Mobi, PDF